Ну дык мышкой пока можно ) Наводишь по координатам и тыркаешь )
Инжекта пока нема. У мну знаний/времени не хватать. У остальных видимо тоже...
Инжекта пока нема. У мну знаний/времени не хватать. У остальных видимо тоже...
вот не пойму что edx пихать т.к. значение не на что не похоже и меняется каждый раз.Quote:
:005C801D 8B542410 mov edx, dword ptr [esp+10]
:005C8021 52 push edx //хз что
:005C8022 55 push ebp //количество занимаемых ячеек
:005C8023 E808440100 call 005DC430
:005C8028 83C408 add esp, 8
Это понятно, но все равно не нажимаются, работа мышью проходит тока при выборе строчки в диалоге, и перемещение предметов из инвентаря, а вот кнопки почему-то не работают, поэтому пришлось починку вещей через инжект делать.Quote:
После
WM_LBUTTONDOWN
должно быть
WM_LBUTTONUP
;)
Очень все просто, но работает тока в диалоговом акне для выбора пункта ответа!!!! Код на DelphiQuote:
о_О
Я не видел еще ни одного реализованного кода с отсылкой СендМессаджа с кликом директинпуному приложению. Ээээ. Дык рабочий код нажатия мышей сендмессаджем плиз в студию!Фиг с ним пусть хоть на ту же квестлайн нажмет...
координаты берем так:Quote:
hWindow := FindWindow(nil, 'Element Client');
procedure PW_MouseClick (x,y:Cardinal);
begin
SendMessage(hWindow,WM_LBUTTONDOWN,0,MakeLong(X,Y) );
Sleep(50);
SendMessage(hWindow,WM_LBUTTONUP,0,MakeLong(X,Y));
end;
НО вот что находится в ригистре edx или esp не могу найти!Quote:
procedure SellCall(aPParams:PParams); stdcall;
var
Address: pointer;
BaseCallAddress:DWORD;
begin
BaseCallAddress := aPParams^.Param0;
Address:=Pointer(aPParams^.Param7); // 005DC430
asm
pushad
mov edx, dword ptr [esp+$10]
push edx
push 1
call Address
add esp, $8
popad
end;
end;