Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (7): « 1 2 [3] 4 5 6 7 »   

> Описание: Подключение своих DLL. Использование WinAPI функции в скрипте с стандартных библиотек
Kibor
Отправлено: 28 Февраля, 2018 - 14:45:40
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




Вот еще.


Это покажет путь ко всем программам. Калькулятору в том числе. Хоть кнопки ПУСК

CODE:
external(INT, "GetProcessImageFileName", "GetProcessImageFileNameA","Psapi.dll");

char array[255];
win w=window ("Калькулятор", "CalcFrame", -1);
int prc=openprocess(w);
GetProcessImageFileName(prc, address (#array[0]), 255);
messagebox(format(#array[0]));


А это немного извращения.. Узнаем путь чтением памяти запущенного процесса сами. Перед этим узнаем имя самого файла путем как выше.

CODE:
external(INT, "GetProcessImageFileName", "GetProcessImageFileNameA","Psapi.dll");


messagebox(path_search(window ("Калькулятор", "CalcFrame", -1)));


function path_search(win w)
{
string exe_name="";
char array[255];
char all_poisk[255];
char chitat_v_char[255];
int adr;
int prc=openprocess(w);
GetProcessImageFileName(prc, address (#array[0]), 255);
for (int n=size(#array[0])-1; n>-1; n--)
{
if (array[n]=='\')goto rr;
exe_name=array[n]+exe_name;
}
rr:;
//messagebox(exe_name);
strcpy(#all_poisk[0], exe_name);
findmemory (1, #all_poisk[0], size(#all_poisk[0]), #adr, 255, prc);

string pyt=exe_name;
chitat_v_char[0]=0;
readmemory(#chitat_v_char[0], 255, adr-255, prc);
for (n=254; n>-1; n--)
{
if (chitat_v_char[n]==0)goto yy;
pyt=chitat_v_char[n]+pyt;
}
yy:;
return pyt;
}


Коряво только работает определение начала строки. Можно по спец символам ориентироваться. Типа :\ и перед этим какая то буква диска..
 
 Top
Flash
Отправлено: 02 Апреля, 2018 - 07:43:02
Post Id



Пользователь
Участник


Покинул форум
Сообщений всего: 57
Дата рег-ции: Нояб. 2015  
Откуда: Лангепас
Репутация: 0




Такой вопрос, можно ли с помощью (external) переназначить клавишу на клавиатуре? Например надо заменить правый шифт на интер. Если можно, то напишите примерУлыбка
 
 Top
Zireael
Отправлено: 02 Апреля, 2018 - 14:26:22
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




Для этого есть специальные программы, например SharpKeys.
Или пишем в блокноте:
CODE:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1c,00,36,00,00,00,00,00

Сохраняем с любым именем и расширением .reg, например 123.reg. Запускаем, добавляем инфу с реестр, перезагружаем комп. Вместо правого шифта будет энтер.
 
 Top
Dantes3000
Отправлено: 08 Августа, 2018 - 10:50:17
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




 Kibor пишет:
Подключает user32.dll, получает указатель на Api функцию MessageBoxA, указывает что в скрипте мы ее будем вызывать по символическому имени my_message и возвращать эта функция будет тип int

Пример создания и подключение своего диалогового окна созданного в Visual Studio

Открытие ссылки

что-то мне кажется, что ссылка не на ту тему ведет
 
 Top
Kibor
Отправлено: 08 Августа, 2018 - 10:57:45
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 Dantes3000 пишет:
не на ту тему ведет

ага.. исправил.
 
 Top
AdryV
Отправлено: 01 Сентября, 2018 - 11:39:28
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




где то на форуме был пост где был приведен пример как выбрать файл txt ini через проводник виндовс Открыть или Сохранить... тоисть с помощью проводника получить путь к файлу...
нужно что бы открывать настройки и сохранять

пожалуйста ткните носом

сам нашел

(Отредактировано автором: 01 Сентября, 2018 - 11:56:47)

 
 Top
Zireael
Отправлено: 25 Ноября, 2018 - 16:16:45
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




Вопрос по поводу addresss - считывает до первого 0 строку (string).
CODE:
external(INT, "OpenClipboard", "OpenClipboard", "User32.dll" );
external(INT, "CloseClipboard", "CloseClipboard", "User32.dll" );
external(INT, "GetClipboardData", "GetClipboardData", "User32.dll" );
external(INT, "GlobalLock", "GlobalLock", "Kernel32.dll" );
external(INT, "GlobalUnlock", "GlobalUnlock", "Kernel32.dll" );

writeclipboard("qwe123"); // пишем текст в буфер

OpenClipboard(0); // открыть буфер
int h = GetClipboardData(1); // 1 - текст в буфере в ansi
int addr = GlobalLock(h); // указатель на первый байт

int i=0;
while(addressc(addr+i)!=formatic(0)) // пока не 0
{
messagebox(addressc(addr+i)); // читаем по байтам
i++;
}

// messagebox(addresss(addr)); // почему так кибор закрывается?

GlobalUnlock(h);
CloseClipboard(); // закрыть буфер
 
 Top
AdryV
Отправлено: 09 Декабря, 2018 - 13:14:10
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




 Kibor пишет:
CODE:
external(VOID, "GetSaveFile", "GetSaveFileNameA", "COMDLG32.DLL");
char b[100];
strcpy(#b[0], "файл");
char f[256];
for (int n=0; n<256; n++)f[n]=0;
char a[77];
for (n=0; n<77; n++)a[n]=0;

writeaddress(76, address(#a[0]));
writeaddress(0, address(#a[4]));
writeaddress(0, address(#a[8]));
writeaddress(address(#b[0]), address(#a[12]));
writeaddress(0, address(#a[16]));
writeaddress(1634928, address(#a[20]));
writeaddress(1000, address(#a[24]));
writeaddress(0, address(#a[28]));


writeaddress(0, address(#a[32]));
writeaddress(address(#f[0]), address(#a[36]));
writeaddress(6148, address(#a[40]));

GetSaveFile(address(#a[0]));
messagebox (format(#f[0]));


подскажи по какой причине этот код постоянно крашит кибор?...
что бы перестал крашиться нужно изменить
char f[512];
for (int n=0; n<512; n++)f[n]=0;
char a[100];
for (n=0; n<100; n++)a[n]=0;
раньше все нормально работало. мне интересно у вас крашится?
если такое ток у меня то эт проблема с виндой, подскажите какие файлы проверять?

ошибка (Отобразить)

(Отредактировано автором: 09 Декабря, 2018 - 13:25:47)

 
 Top
Zireael
Отправлено: 09 Декабря, 2018 - 14:14:37
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
подскажи по какой причине этот код постоянно крашит кибор?

Неправильно заполнена структура tagOFNA structure
Окно сохранения файла (Отобразить)
 
 Top
AdryV
Отправлено: 09 Декабря, 2018 - 14:42:21
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




 Zireael пишет:
Неправильно заполнена структура

сбасиб Подмигивание
еще вопрос эту функцию ведь можно использовать как доя открытия так и для сохранения
только нужно будет заменить, крашей ведь не будет?)))

код (Отобразить)
 
 Top
Страниц (7): « 1 2 [3] 4 5 6 7 »
Сейчас эту тему просматривают: 3 (гостей: 3, зарегистрированных: 0)
« О программе Кибор »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by