Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.27;
Скачать: CL | DM;

Вниз

эмуляция нажатия клавиш в неактивном окне   Найти похожие ветки 

 
KiberKot ©   (2008-01-10 05:52) [0]

тема уже была, но ее закрыли, так что спрошу еще раз
ка эмулировать нажатие клавиши в неактивном окне зная его
дескриптор (D3D Window)
насколько я понял SendMessage  не поможет
так же я нашел пример
procedure EmulateKey(Wnd: HWND; VKey: Integer);
asm
  push 0
  push edx
  push 0101H //WM_KEYUP
  push eax
  push 0
  push edx
  push 0100H //WM_KEYDOWN
  push eax
  call PostMessage
  call PostMessage
end;

// Пример использования:
EmulateKey(Edit1.Handle, VK_RETURN);

каторый так же никакого результата недал
ассемблера к сожалению незнаю


 
Cj ©   (2008-01-10 06:18) [1]


> D3D Window

это Direct 3D? если да, то никак, DirectX использует свои средства засекания клавиш, через свой(помоему) драйвер. Мне в таком случае помогала keybd_event


 
Cj ©   (2008-01-10 06:28) [2]


> keybd_event

для активного конечно окна


 
KiberKot ©   (2008-01-10 20:13) [3]

D3D Window - игра RF Online


 
wispa ©   (2008-06-13 16:42) [4]

уменя твой верхний пример работает просто беда в том что он нажимает и отпускает(просто мгновенно,кстате почемуто два раза нажимает) и зажатие клавиши несмог реализовать(в асемблере тож нуль)


 
CAMOPKAH   (2008-08-13 23:33) [5]

В данном случае задержками :

 push 0
 push edx
 push 0101H //WM_KEYUP
 push eax
 push 500 //Задержка в ms
 push 0
 push edx
 push 0100H //WM_KEYDOWN
 push eax
 call PostMessage
 call Sleep
 call PostMessage


 
CAMOPKAH   (2008-08-13 23:33) [6]

В данном случае задержками :

 push 0
 push edx
 push 0101H //WM_KEYUP
 push eax
 push 500 //Задержка в ms
 push 0
 push edx
 push 0100H //WM_KEYDOWN
 push eax
 call PostMessage
 call Sleep
 call PostMessage


 
CAMOPKAH   (2008-08-13 23:34) [7]

В данном случае задержками :

 push 0
 push edx
 push 0101H //WM_KEYUP
 push eax
 push 500 //Задержка в ms
 push 0
 push edx
 push 0100H //WM_KEYDOWN
 push eax
 call PostMessage
 call Sleep
 call PostMessage


 
МистерТ   (2008-08-14 12:58) [8]

> KiberKot ©   (10.01.08 20:13) [3]
> D3D Window - игра RF Online

вероятнее всего там использован DirectInput, а это значит ни какими PostMessage/SendMessage и ассемблером клавишу не нажать. Только писать собственную оболочку над DI.
И вообще, во всех играх банят за ботописание :)



Страницы: 1 вся ветка

Текущий архив: 2009.09.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
2-1248266549
Kolan
2009-07-22 16:42
2009.09.27
Как поймать клик на перекрытом дочерними родительском контроле?


1-1217481040
TNT
2008-07-31 09:10
2009.09.27
OleContainer и приложение


2-1248268660
Zalm
2009-07-22 17:17
2009.09.27
Прием сообщений данных сервером


3-1227617892
nstur
2008-11-25 15:58
2009.09.27
Объединение строк


2-1248157687
abun
2009-07-21 10:28
2009.09.27
Проблема с отладкой