|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » движения мыши и передача процессу |
|
движения мыши и передача процессу
|
Новый участник Сообщения: 21 |
Профиль | Отправить PM | Цитировать Версия AutoIt: 3.3
Описание: необходимо написать код,который будет 1. перехватывает движение мыши 2. меняет на свои значения 3. передает процессу "1.ехе" Примечания: проблема в том что MouseMove в этом процессе(1.ехе) не работает. Перехват- определение движения мыши раньше других процессов. и не дать другим процессам ПОЛУЧИТЬ ИСТИННЫЕ координанты мыши. проще гоовря- процес 1.ехе перехвтывает координаты мыши движется к ним и возвращает координаты 0,0 .(к примеру) для всех остальных . а мне надо перехватить значение движения мыши ДО процесса 1.ехе изменить их и передать уже дальше измененные для процесса 1.ехе КАким образом передавать- не знаю. ... бытует мнение что не плохо бы изменить users32.dll от куда скорее всего 1.ехе и считывает координаты возможно что процесс сам получает данные из users32.dll, может просто менять значение в этой длл-ки? и тогда перехватывать движение не надо а просто блокировка движения "настощей" мыши. |
|
Отправлено: 00:29, 26-07-2011 |
Новый участник Сообщения: 21
|
Профиль | Отправить PM | Цитировать Хорошо может тогда ктонитьбуь расскажет о
mouse_event, ClipCursor, GetCursor, GetCursorPos, SetCaretPos, SetCursorPos, SetWindowsHookExA, TrackMouseEvent |
Отправлено: 02:48, 27-07-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать yukuru,
WinAPIEx.au3 (http://autoit-script.ru/index.php/topic,47.0.html): _WinAPI_ClipCursor() _WinAPI_GetCursor() _WinAPI_SetCaretPos() _WinAPI_TrackMouseEvent() WinAPI.au3: _WinAPI_SetWindowsHookEx() GetCursorPos() http://msdn.microsoft.com/en-us/libr...90(VS.85).aspx SetCursorPos() http://msdn.microsoft.com/en-us/libr...94(VS.85).aspx |
Отправлено: 05:04, 27-07-2011 | #3 |
Новый участник Сообщения: 21
|
Профиль | Отправить PM | Цитировать Мад. прости меня конечно, но...
...я блин сначала вотЪ это перерыл, прежде чем о них начать спрашивать http://msdn.microsoft.com/en-us/libr...(v=VS.85).aspx мне всеже просто не понятно некоторые моменты работы. надо заставить двигаться мышь. помоги $return = DllCall("user32.dll", "int", "SetCursorPos","int","300","int","500") и MouseMove ( 300,500 ) не помогло. мышь не двигается в запущеннном окне программы(хотя в остальых окнах -при отсутвиии этой программы двигается) |
Отправлено: 14:46, 27-07-2011 | #4 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать yukuru,
#include <StructureConstants.au3> $iX = 100 $iY = 200 $aRet = DllCall('User32.dll', 'int', 'SetCursorPos', 'int', $iX, 'int', $iY) ConsoleWrite(@error & @TAB & $aRet[0] & @CR) Sleep(1000) $t_Point = DllStructCreate($tagPOINT) $Ret = DllCall('User32.dll', 'int', 'GetCursorPos', 'ptr', DllStructGetPtr($t_Point)) If (@error) Or (Not $Ret[0]) Then ConsoleWrite(@error & @TAB & $Ret[0] & @CR) Else $i_X = DllStructGetData($t_Point, 'X') $i_Y = DllStructGetData($t_Point, 'Y') ConsoleWrite('X: ' & $i_X & @TAB & 'Y: ' & $i_Y & @CR) EndIf |
|
Отправлено: 16:25, 27-07-2011 | #5 |
Новый участник Сообщения: 21
|
Профиль | Отправить PM | Цитировать вотЪ о чем я и говорю, как же ж не понятно.
в ЭТОМ куск кода мы НАЗНАЧАЕМ координаты мыши. тоесть мышь "телепортируется" туда. а нужно сделать чтобы мышь ДВИГАЛАСЬ. |
Отправлено: 17:07, 27-07-2011 | #6 |
Старожил Сообщения: 206
|
Профиль | Отправить PM | Цитировать Для этого нужно перехватывать вызовы системных функций. В AutoIt это сделать не получиться. Изучай C/C++...
|
Отправлено: 19:29, 27-07-2011 | #7 |
Новый участник Сообщения: 21
|
Профиль | Отправить PM | Цитировать ясно, как как импортирвоть код на С в Autoit?
ксати а разве нельзя использовать чтото вроде SetWindowsHookExA для перехвата системных функций? |
Отправлено: 19:46, 27-07-2011 | #8 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - Высокий приоритет заданному процессу | 7human7 | Скриптовые языки администрирования Windows | 14 | 26-01-2012 16:34 | |
[решено] Узнать путь к процессу | notbanned | AutoIt | 5 | 29-06-2010 12:15 | |
Debian/Ubuntu - эмулятор движения и кликов мыши | SERZHant1992 | Общий по Linux | 0 | 28-06-2009 22:30 | |
Вопрос по процессу system | 12341234 | Программное обеспечение Windows | 15 | 11-12-2007 22:02 | |
Как настроить скорость движения указателя мыши в ОС FreeDOS? | Oleg_SK | Общий по FreeBSD | 3 | 04-05-2007 23:32 |
|