Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Проблемы с работай скомпилированного exe

Страниц (1): [1]
 

1. tubux - 09 Августа, 2015 - 10:37:49 - перейти к сообщению
Здравствуйте, у меня возникла проблема со скомпилированным exe файлом.
Если запускать написанный код из среды Кибор, то всё работает нормально, мышка плавно скользит и кликает по окну игры.

Если же запускать скомпилированный фаил, то мышка не скользит плавно, а резко перескакивает в координаты для клика , такое её поведение блокируется защитой игры и клики не происходят, мышь просто прыгает по координатам.

Это глюк или что? Как можно победить и заставить exe, работать точно так же, как если бы код запускался из среды Кибор?

Пробовал exe запускать от админа, пробовал перекомпилировать, пробовал запускать exe c диска D:¸отключал антивирус, отключал Кибор, перезапускал Кибор, снова компилировал, пробовал запускать exe вообще без игры, делал всё это на ноутбуке с Windows8.1 x 64, так же пробовал запускать exe на ноутбуке с Windous 7 x 64 без установленного Кибор. Всё это не помогло.
2. Kibor - 09 Августа, 2015 - 11:06:29 - перейти к сообщению
надо уточнять, что в кибор использовался антиантикликер и включалось эмуляция движения мыши...
понял это я по
 tubux пишет:
Если запускать написанный код из среды Кибор, то всё работает нормально, мышка плавно скользит и кликает по окну игры.


в собранном ехе что бы работал антиантикликер надо включать его программно.. так как в нем нет настроек как в кибор.(для просмотра ссылки Вам необходимо авторизоваться) antianticlicker (1);//включает публичный
antianticlicker (0);//выключает публичный
antianticlicker(1, "x32");//Включает приватный антиантикликер который справляется на данный момент с любой защитой
antianticlicker(0, "x32");//выключает приватный

options ("antianticlicker", int, int, int, int, int);
Параметры
Первый - указать что настраиваем
Второй - тип мыши. 2 - 2 кнопки или тачпад, 3 - 3 кнопки.
Третий - включить эмуляцию клавы. (1 вкл, 0 выкл)
Четвертый - включить эмуляции мыши клик. (1 вкл, 0 выкл)
Пятый - включить эмуляции мышь движение. (1 вкл, 0 выкл)
Шестой - скорость движения (1 - 10 )
options ("antianticlicker", 2, 1, 1, 1, 5);
3. tubux - 09 Августа, 2015 - 12:09:36 - перейти к сообщению
Спасибо, теперь exe работает нормально, но при каждом запуске сначала идут модальные окна с сообщениями "Для работы в режиме анти антикликера необходимы PS/2 устройства..."
и второе "Модуль готов к работе". Только когда их закроешь, начинает работать сам exe. Каким образом можно отключить эти сообщения?
4. Kibor - 09 Августа, 2015 - 12:15:48 - перейти к сообщению
это надо сделать
пока никак.
5. tubux - 10 Августа, 2015 - 03:53:32 - перейти к сообщению
Скажите, а это сложно реализовать, дописать оптионс? Я и максимальную версию то приобрёл в основном из-за функции, которая позволяет запускать exe сразу на исполнение. А получается, что эти два окна блокируют выполнение программы, в результате чего она теряет всякий смысл.

Может можно как-то прописать код, чтобы он эти окна закрывал типа Form1.close;
Хотя если программа останавливается когда выскакивает сообщение, то до Form1.close; дело и не дойдёт.
(Добавление)
Можно наверное написать дополнительный софт, который будет сидеть в трее и реагировать на все всплывающие окна, закрывая их, но это уже начинаются пляски с бубном
6. Kibor - 10 Августа, 2015 - 03:58:08 - перейти к сообщению
реально. по поже сделаю.
(Добавление)
пока просто для информации покажу как сделать такие вещи...

Скачать эту dll или написать свою..
http://kibor-bot.com/files/kill_window.dll

ее код
CODE:
#include "stdafx.h"

int stop=0;

potok()
{
HWND h;
s: h=FindWindowA(0, "Kibor");
if (h!=0)SendMessage(h, WM_CLOSE, 0, 0);
Sleep(20);
if (stop==0)goto s;
ExitThread(0);
return 0;
}


extern "C" __declspec(dllexport)void Pot()
{
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)potok, 0, 0, 0);
}

extern "C" __declspec(dllexport)void Stop(int p)
{
stop=p;
}


смысл что она в отдельном потоке ищет окна те и закрывает из. работает параллельно кибору будучи запущенной в нем...

в кибор соответственно такой код писать
CODE:
unpack("C:\kill_window.dll", pathfolder()+"kill_window.dll", 0);
external(INT, "kill", "Pot", "kill_window.dll");
external(INT, "exitdll", "Stop", "kill_window.dll");
kill();
antianticlicker (1);
exitdll(1);




a: sleep(20); goto a ;


RESOURCE
{
"C:\kill_window.dll"
}


саму длл кинуть в корень диска C и собрать exe с ресурсами.

Когда скрипт запустится, он распакует длл, запустит в ней поток который будет следить за окнами.
потом включится антиантикликер и появятся те окна, но так как длл в потоке работает он быстро их закроет.
после запуска антиантикликера вызовется функция отключающая поток..

ну это просто пример решения такой задачи.

доп инфа тут Подключение своих DLL. Использование API функции в скрипте с стандартных библиотек
(Добавление)
Таким образом можно вообще часть бота писать на своем любимом языке, используя в Кибор только спец функции.. к примеру анализ экрана, антиантикликер и тд.
7. Kibor - 10 Августа, 2015 - 17:12:51 - перейти к сообщению
 tubux пишет:
Скажите, а это сложно реализовать, дописать оптионс?


сделал

options ("antianticlicker", int, int, int, int, int, int, int );
Параметры
Первый - указать что настраиваем
Второй - тип мыши. 2 - 2 кнопки или тачпад, 3 - 3 кнопки.
Третий - включить эмуляцию клавы. (1 вкл, 0 выкл)
Четвертый - включить эмуляции мыши клик. (1 вкл, 0 выкл)
Пятый - включить эмуляции мышь движение. (1 вкл, 0 выкл)
Шестой - скорость движения (1 - 10 )
Седьмой - 0 не проводить тест антиантикликера, 1 проводить
Восьмой - 1 выводить сообщения антиантикликера, 0 не выводить
options ("antianticlicker", 2, 1, 1, 1, 5, 1, 1);

Семь и восемь

CODE:
options ("antianticlicker", 2, 1, 0, 0, 5, 0, 0);
antianticlicker (1);
keydown (CONTROL);keydown (MENU);
key (DELETE);
keyup (CONTROL);keyup (MENU);
close();

запущенный скрипт такой тихо нажмет контр альт дел
8. tubux - 12 Августа, 2015 - 08:50:11 - перейти к сообщению
Спасибо большое, всё работает отлично!

Но на всякий случай если кому понадобится, уточню один момент. Настройки нужно прописывать до запуска анти антикликера.
То есть сначала options ("antianticlicker", 2, 1, 1, 1, 5,0,0);
И только потом включать antianticlicker (1);

А то я минут 10 сидел думал, почему продолжают выходить сообщения, так как сначала запускал анти антикликер и только потом прописывал оптионс)))
9. Kibor - 12 Августа, 2015 - 11:00:54 - перейти к сообщению
Правильно. options как и antianticlicker простые функции. они выполняются по ходу выполнения программы..

Powered by ExBB FM 1.0 Final