PDA

Просмотр полной версии : [Программа] ForBotPirates by WestSide


Bac9l007
19.07.2010, 20:35
Здрасте =)
Представляю вам свою программу, её задача проверить запущено ли окно "Bot" если запущено она афкается на 5секунд потом снова проверяет, программа зацикленна на проверке каждые 5секунд, если бота нет то она запускает его, тыкает Start добавляет 3окна ботов постепенно и тыкает Старт ботов.
Программа будет дорабатываться, в архиве лежит единственный работающий из известных мне, бот.
Чуть незабыл, программа ведет логи, т.к. мои знания в дельфи слабы я не смог привязать вывод времени записи логов
Но уже можно узнать сколько раз за ночь вылетал бот.
Во время работы бота требуется закрыть все программы которые могут выскачить поверх всех окон.
и свернуть пв. наверху оставить самого бота и программу. )

Все права на ForBotPirates принадлежат WestSide.

Все права на BotPirates принадлежат itrax.

Если что
Bac9l007:=WestSide; =)

witcherD
19.07.2010, 21:26
время так

t: TSYSTEMTIME;
...
GetLocalTime(t);
...
// t.wHour
// t.wMinute


P. S. специалист в делфи - Dinmaite =)

AEBus
20.07.2010, 00:04
Выложи пожалуйста отчет вирустотала ([Ссылки могут видеть только зарегистрированные и активированные пользователи]) для своей программы

Nickolas
20.07.2010, 00:09
Вирустотал
Бот ([Ссылки могут видеть только зарегистрированные и активированные пользователи] c7ac46dd5303d0-1279569908)
ForBot ([Ссылки могут видеть только зарегистрированные и активированные пользователи] 3e0913408ab17c-1279569968)

alexsoid
20.07.2010, 09:22
а че он тыкает в окошко снизу (скилов) и нажимает стрелочки

Добавлено через 39 минут
а никак не сделать чтобы он добовлял только одно окно

Bac9l007
20.07.2010, 17:45
а че он тыкает в окошко снизу (скилов) и нажимает стрелочки

Добавлено через 39 минут
а никак не сделать чтобы он добовлял только одно окно
Мои знания в дельфе не позволили мне сделать нажатие клавиш таб верх вниз и прочее для неактивного окна поэтому для корректной работы надо свернуть все кроме BotPirates и моей утилиты, во время работы программы действия на компе низя делать, при вылете BotPirates утилита снова запустит бота и добавит 3окна, пока это максимальное ограничение окон. если хотите меньше то введите в ненужные поля цифру 1 или другой знак, программа проведет его добавление но окно будет ненайдено и пропущено.

pahannn
20.07.2010, 21:11
очень жаль,значит бот получается неполноценный?

Bac9l007
20.07.2010, 22:59
очень жаль,значит бот получается неполноценный?
бот полноценный, все функции доступны только во время его работы нельзя ничего делать на компе, я его писал чтобы чисто на ночь ставить.

DoctorWho
21.07.2010, 00:56
Мои знания в дельфе не позволили мне сделать нажатие клавиш таб верх вниз и прочее для неактивного окна поэтому для корректной работы надо свернуть все кроме BotPirates и моей утилиты, во время работы программы действия на компе низя делать, при вылете BotPirates утилита снова запустит бота и добавит 3окна, пока это максимальное ограничение окон. если хотите меньше то введите в ненужные поля цифру 1 или другой знак, программа проведет его добавление но окно будет ненайдено и пропущено.
client:=findwindow(nil,pchar(Edit2.text));
sendmessage(client,WM_KEYDOWN,VK_UP,0);

НЕТилиДа
21.07.2010, 07:54
Это программа служит для того чтобы не вылетал бот ? Тоесть бот вылетел и автоматом снова зашел
И какая задержка всего этого действия ?
( я просто ставлю бота на хил вот и интересно бао не умрет пока релог идет )

Shown45
21.07.2010, 07:56
Это программа служит для того чтобы не вылетал бот ? Тоесть бот вылетел и автоматом снова зашел
И какая задержка всего этого действия ?
( я просто ставлю бота на хил вот и интересно бао не умрет пока релог идет )

Задержка ни какая как бот и вылетит, так снова поставит.

noxyuHaHuk
21.07.2010, 09:32
Это программа служит для того чтобы не вылетал бот ? Тоесть бот вылетел и автоматом снова зашел
И какая задержка всего этого действия ?
( я просто ставлю бота на хил вот и интересно бао не умрет пока релог идет )
Запуск бота происходит в течении 5секунд после вылета, а старт бота где то еще через 20 - 25сек

Добавлено через 2 минуты
client:=findwindow(nil,pchar(Edit2.text));
sendmessage(client,WM_KEYDOWN,VK_UP,0);
попробовал это, нифига не произошло компилятор не ругался но в BotPirates действий никаких не было. (


noxyuHaHuk:=WestSide;

НЕТилиДа
21.07.2010, 10:14
Запуск бота происходит в течении 5секунд после вылета, а старт бота где то еще через 20 - 25сек

Добавлено через 2 минуты

попробовал это, нифига не произошло компилятор не ругался но в BotPirates действий никаких не было. (


noxyuHaHuk:=WestSide;

/facepalm от моего бао ничего не останется

noxyuHaHuk
21.07.2010, 10:17
/facepalm от моего бао ничего не останется
зачем тебе бао? для друлей скорпионы и големы норм )))

Добавлено через 7 минут
Опять тему с гео ботом удалили =)

Хакерок:)
21.07.2010, 10:59
Получаетсо эта программа решает практически единственную проблему БотПиратеса: Вылет. Молодец автор, лови спасибку за старание. Как ток будет возможность потестить - сразу. ;)

WestSide[72]
21.07.2010, 11:13
Получаетсо эта программа решает практически единственную проблему БотПиратеса: Вылет. Молодец автор, лови спасибку за старание. Как ток будет возможность потестить - сразу. ;)
Верно, она еще ведет логи в файл logi.txt там можно посмотреть сколько раз за ночь вылетал бот ))) с следующим обновлением увеличу колличество окон сделаю работу в неактивном окне и вывод времени в логах. Тестить пока бесполезно )

AEBus
21.07.2010, 19:02
WestSide зачем тебе 2 твина?

WestSide[72]
21.07.2010, 20:33
WestSide зачем тебе 2 твина?
я пароли от них забыл :omg:

AEBus
21.07.2010, 20:35
А функция восстановления паролей не катит?

WestSide[72]
21.07.2010, 21:06
А функция восстановления паролей не катит?
Нет, регистрация на мыло от 10 Minute Mail.

WestSide[72]
28.07.2010, 13:42
Нужен кто то, кто шарит с дельфи, конкретно с SendMessage :omg:

Dinmaite
28.07.2010, 21:49
спрашивай

WestSide[72]
29.07.2010, 20:06
спрашивай

procedure TForm1.Button1Click(Sender: TObject);
var
h,w: thandle;
s,d: string;
p,z: pchar;
log:TextFile;
begin
s := 'BotPirates';
h := findwindow(nil, pchar(s));
if h=0
then
begin
ShellExecute(0,0,'Bot.exe',0 , 0, 0);
sleep(5000);
postmessage(h, WM_KEYDOWN, VK_TAB, 0);
sleep(30);
postmessage(h, WM_KEYUP, VK_TAB, 0);
postmessage(h, WM_KEYDOWN, VK_TAB, 0);
sleep(30);
postmessage(h, WM_KEYUP, VK_TAB, 0);
showmessage('Bot offline');

end
else
showmessage('Bot online');
end;
Что неверно в коде? 2нажатия таб происходят на самой программе а не на боте.
А если вот так то нормально, и действия происходят на окне бота.

procedure TForm1.Button1Click(Sender: TObject);
var
h,w: thandle;
s,d: string;
p,z: pchar;
log:TextFile;
begin
s := 'BotPirates';
h := findwindow(nil, pchar(s));
if h=0
then
begin
showmessage('Bot offline');

end
else
postmessage(h, WM_KEYDOWN, VK_TAB, 0);
sleep(30);
postmessage(h, WM_KEYUP, VK_TAB, 0);
postmessage(h, WM_KEYDOWN, VK_TAB, 0);
sleep(30);
postmessage(h, WM_KEYUP, VK_TAB, 0);
showmessage('Bot online');
end;

По SendMessage:


procedure ClickButton(wind:PChar; caption: string);
var wnd, TheChild: HWND;
caption1: string;
begin
wnd := findwindow(nil,wind);
SetLength(caption1, GetWindowtextLength(wnd));
GetWindowText(wnd, @caption1[1], length(caption1) + 1);
TheChild := FindWindowEx(wnd, 0, nil, PChar(caption));
SendMessage(TheChild, BM_CLICK, 0, 0);
end;

как этот код заставить тыкнуть кнопку старт в боте? =\

Dinmaite
29.07.2010, 20:23
1 код, проверь получаешь ли ты хендл.
2 код лучше используй sendmessage (postmessage не ожидает ответа от приложения)
3 код ты точно получаешь хендл кнопки? Если да попробуй сам имитировать сообщение BM_CLICK (This message causes the button to receive the WM_LBUTTONDOWN and WM_LBUTTONUP messages, and the button's parent window to receive a BN_CLICKED notification code.).
Если и так не выйдет, можешь попробовать передать кнопке нажатие клавиши "пробел".

WestSide[72]
31.07.2010, 00:14
1 код, проверь получаешь ли ты хендл.
2 код лучше используй sendmessage (postmessage не ожидает ответа от приложения)
3 код ты точно получаешь хендл кнопки? Если да попробуй сам имитировать сообщение BM_CLICK (This message causes the button to receive the WM_LBUTTONDOWN and WM_LBUTTONUP messages, and the button's parent window to receive a BN_CLICKED notification code.).
Если и так не выйдет, можешь попробовать передать кнопке нажатие клавиши "пробел".
Я попрошу с примерами т.к. мои знания в дельфи минимальны...

Dinmaite
31.07.2010, 12:33
Дело в том что у меня нет этого бота, и желания его ставить тоже нет.

попробуй вместо:
SendMessage(TheChild, BM_CLICK, 0, 0);
писать:
SendMessage(TheChild, WM_LBUTTONDOWN, 0, 0);
SendMessage(TheChild, WM_LBUTTONUP, 0, 0);
или:
SendMessage(TheChild, WM_CHAR, VK_SPACE, 0);
или:
SendMessage(TheChild, WM_KeyDown, ord(' '), 0);
SendMessage(TheChild, WM_KeyDownUp, ord(' '), 0);
(что аналогично
SendMessage(TheChild, WM_KeyDown, 32, 0);
SendMessage(TheChild, WM_KeyDownUp, ord(' '), 0); )

pitbyll2
08.09.2010, 16:14
Переделай плиз прогу под новый бот для обновленного клиента!

AEBus
08.09.2010, 17:50
Автор в бане, причем в пожизненном, без возможности вернуться
Следовательно программа лишена поддержки, следовательно новой версии уже не будет

Поэтому тему закрываю