Как сэмулировать клик мыши? SendMessage не катит :(
От: mxl33  
Дата: 16.11.05 13:46
Оценка:
В обссчем есть одна игрушка, в которой мне надо сэемулировать клик мышкой.
Работает игруха через DirectX и когда я смотрю ее через MS Spy++ то на клавиатуру события WM_KEYxxxxx вырабатываются, а на мышь нет. Посмотрев таблицу импорта подтверждаются мои опасения — она работает с мышью напрямую (вызывает DirectInput8Create из DINPUT8.dll)

Вопрос: как можно все-таки сэмулировать клик?
Re: Как сэмулировать клик мыши? SendMessage не катит :(
От: Privalov  
Дата: 16.11.05 15:10
Оценка:
Здравствуйте, mxl33, Вы писали:

M>Вопрос: как можно все-таки сэмулировать клик?


mouse_event не спасает тоже?
Re[2]: Как сэмулировать клик мыши? SendMessage не катит :(
От: mxl33  
Дата: 16.11.05 15:32
Оценка:
Здравствуйте, Privalov, Вы писали:

P>Здравствуйте, mxl33, Вы писали:


M>>Вопрос: как можно все-таки сэмулировать клик?


P>mouse_event не спасает тоже?


Тоже думал что поможет, но почему-то не катит
Делаю так

SendMessage(hWnd, WM_KEYDOWN, '8', 0x00090001);
SendMessage(hWnd, WM_KEYUP, '8', 0xC0090001);

Sleep(1000);

mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);


Кнопка нажимается, а мышь — нет
Re: Как сэмулировать клик мыши? SendMessage не катит :(
От: Аноним  
Дата: 16.11.05 23:58
Оценка: +1
Здравствуйте, mxl33, Вы писали:

M>В обссчем есть одна игрушка, в которой мне надо сэемулировать клик мышкой.

M>Работает игруха через DirectX и когда я смотрю ее через MS Spy++ то на клавиатуру события WM_KEYxxxxx вырабатываются, а на мышь нет. Посмотрев таблицу импорта подтверждаются мои опасения — она работает с мышью напрямую (вызывает DirectInput8Create из DINPUT8.dll)

M>Вопрос: как можно все-таки сэмулировать клик?


SendInput?
Re[3]: Как сэмулировать клик мыши? SendMessage не катит :(
От: Privalov  
Дата: 17.11.05 05:42
Оценка:
Здравствуйте, mxl33, Вы писали:


M>Тоже думал что поможет, но почему-то не катит

M>Делаю так

M>
SendMessage(hWnd, WM_KEYDOWN, '8', 0x00090001);
M>SendMessage(hWnd, WM_KEYUP, '8', 0xC0090001);

M>Sleep(1000);

M>mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
M>mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);


M>Кнопка нажимается, а мышь — нет


У меня SendMessage с WM_KEYDOWN/WM_KEYUP работало не всегда. Я использовал keybd_event. До сих пор удавалось обходиться без SendInput, потому и не вспомнил о ней. Может быть, Аноним прав.
Re[4]: Как сэмулировать клик мыши? SendMessage не катит :(
От: mxl33  
Дата: 17.11.05 16:53
Оценка:
Здравствуйте, Privalov, Вы писали:

P>У меня SendMessage с WM_KEYDOWN/WM_KEYUP работало не всегда. Я использовал keybd_event. До сих пор удавалось обходиться без SendInput, потому и не вспомнил о ней. Может быть, Аноним прав.


Как я уже писал, с WM_KEYDOWN/WM_KEYUP у меня проблем нету — все нормально работает
Проблема с эмуляцией мыши, и наскока мне известно SendInput это просто обертка над keybd_event и mouse_event. Все же попробую с SendInput, но больших надежд на это не возлагаю
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.