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

Вниз

Управление мышью   Найти похожие ветки 

 
Slimer   (2009-02-17 13:09) [0]

Добрый день!
Врядли вы сталкивались с такой проблеммой:) Но как опытные программисты может быть знаете как ее решить:
требуется управлять мышью (перемещение/клики), но без использования Win32 функции SendInput() или mouse_event(). Есть ли другие способы?


 
Palladin ©   (2009-02-17 13:10) [1]

Можно маленького робота построить, подключить его к LPT и написать к нему программу движений :)


 
Slimer   (2009-02-17 13:13) [2]


> Можно маленького робота построить, подключить его к LPT
> и написать к нему программу движений :)

кхм... т.е. никак получается?))


 
Сергей М. ©   (2009-02-17 13:14) [3]

А как еще можно управлять мышью, не прикасаясь к ней ?)


 
Сергей М. ©   (2009-02-17 13:16) [4]

Ну разве что запрограммировать какого-нть "телекинетика", чтобы взглядом двигал мыша и кнопки на ней давил)


 
Slimer   (2009-02-17 13:22) [5]

Ну я думал может есть какие нибудь другие функции помимо этих двух и телекинеза с роботом))


 
Johnmen ©   (2009-02-17 13:26) [6]

А эти две разве управляют???


 
Slimer   (2009-02-17 13:28) [7]


> А эти две разве управляют???

курсором


 
Johnmen ©   (2009-02-17 13:31) [8]

Причем здесь курсор?


 
MBo ©   (2009-02-17 13:33) [9]

http://rsdn.ru/forum/message/3286095.1.aspx


 
Сергей М. ©   (2009-02-17 13:43) [10]


> Slimer   (17.02.09 13:28) [7]
> курсором


Управление мышью и управление курсором (эмуляция событий мыши) - две разные разницы.

Про курсор в вопросе ни слова.


 
Slimer   (2009-02-17 13:45) [11]


> Причем здесь курсор?

я думаю вопрос понятен: требуется эмулировать нажатие кнопки мыши без использования функций SendInput или mouse_event. А если вариантов нет - смысл цепляться к словам?


 
Сергей М. ©   (2009-02-17 13:58) [12]

SetCursorPos - поелозить курсором по экрану

[Child]WindowFromPoint - получение хэндла окна, над которым находится мышиный курсор

WM_[L|R]BUTTON[UP|DOWN|DBLKLIK] - сообщения об эмулируемых событиях мышиных кнопок для отправки окну, над которым находится мышиный курсор


 
Slimer   (2009-02-17 14:02) [13]


> Сергей М. ©   (17.02.09 13:58) [12]

SetCursorPos - не подходит, надо что-то другое.

> WM_[L|R]BUTTON[UP|DOWN|DBLKLIK]

это же API из user32.dll - тоже не подходит.


 
Сергей М. ©   (2009-02-17 14:12) [14]

Я сейчас тебе один умный вещ скажу, только ты не обижайся)..

Добраться к мышиному "нутру" минуя API конечно можно, но это уже будут НЕдокументированные способы. А они дурно пахнут)


 
Slimer   (2009-02-17 14:14) [15]


> Сергей М. ©   (17.02.09 14:12) [14]

Об этом я подозревал, вот и хотел узнать насколько дурной у них запах))


 
Сергей М. ©   (2009-02-17 14:17) [16]

Весьма дурной, уверяю тебя)


 
Anatoly Podgoretsky ©   (2009-02-17 15:03) [17]

> Slimer  (17.02.2009 13:09:00)  [0]

Деньги будут рекой течь, будешь самый известный кликер.


 
имя   (2009-02-17 15:03) [18]

Удалено модератором


 
KSergey ©   (2009-02-17 15:10) [19]

Я придумал! Надо драйвер написать мышиный, но с мышкой не связанный никак.


 
Slimer   (2009-02-17 16:05) [20]

подскажите, можно ли с помощью SendMessage переместить курсор мыши в нужную мне точку?


 
Сергей М. ©   (2009-02-17 16:22) [21]

Что-то ты как-то слишком быстро оглобли завернул - то тебе WinAPI не товарищ, то сразу согласный стал)


> можно ли с помощью SendMessage переместить курсор мыши в
> нужную мне точку?


Чем тебе SetCursorPos не угодила ? На то ведь и существует она ..


 
Slimer   (2009-02-17 16:40) [22]

SetCursorPos другие функции блокируются другой программой


 
Сергей М. ©   (2009-02-17 16:54) [23]


> SetCursorPos другие функции блокируются другой программой


Эт что за вирусня такая ?


 
Slimer   (2009-02-17 16:57) [24]

это обычный GameGuard :) блокирует использование API функций, но не всех... раскопал вот что SendMessage он постеснялся трогать почему-то...


 
@!!ex ©   (2009-02-17 17:01) [25]

Опять кликер для ММОРПГ...
Вот нафиг. а?


 
Slimer   (2009-02-17 17:04) [26]


> Вот нафиг. а?

чтоб рулить:)


 
Slimer   (2009-02-17 17:05) [27]

да программа то собственно отлично работает, но не на всех серверах. там где ГГ - не фурычит


 
@!!ex ©   (2009-02-17 17:09) [28]

Dll инъекцию и никакой GG не спасет.


 
Сергей М. ©   (2009-02-17 17:09) [29]

Кризис, панимаиш, на дворе цветет махровым цветом, а им все в цацки-бирюльки поиграть)


> раскопал вот что SendMessage он постеснялся трогать почему-
> то


Раскопай все что оно "трогает", тогда наверняка подыщем простейшее решение)
А SendMessage ни мыша ни курсор двинуть не может - не для того она предназначена


 
Slimer   (2009-02-17 17:14) [30]

Вот собсно оглашаю весь список:

(ntdll.dll)
--------------------------
Ntopenthreadtoken
NtQueueApc Thread
NtTranslateFilePatch
NtUnlockfile
RtlGetNVersionNumbers
ZWOpenProcess
zwquerysysteminformation
zwsuspendthread
zwterminatethread
--------------------------
(CSRSRV.dll)
--------------------------
Csrcreateprocess
--------------------------
(User32.dll)
--------------------------
GetWindowThreadProcessID
PostmessageA
PostmessageW
SendInput
SendMessageA
SendmessageW
SetCursorPos
SetwindowshookexA
Setwindowshookexw
keybd_event
mouse_event
--------------------------
(Kernel32.dll)
--------------------------
CreateProcessInternalW
DebugActiveProcess
GetProcAddress
Loadlibraryexw
movefilew
openprocess
readprocessmemory
VirtualProtect
Virtualprotectex
writeprocessmemory
--------------------------
(GDI32.DLL)
--------------------------
get pixel
--------------------------
(Advapi32.dll)
--------------------------
CreateRestrictedToken
--------------------------
(Winsta.dll)
--------------------------
winstationterminateprocess


 
Сергей М. ©   (2009-02-17 20:21) [31]


> Slimer   (17.02.09 17:14) [30]


Из каких источников сия конфид.инф-ция ?
Уж не из таблицы ли импорта ?


 
Slimer   (2009-02-17 21:15) [32]

на каком-то форуме нарыл... за 100% достоверность не отвечаю, но mouse_event, SendInput и SetCursorPos сам лично проверял - действительно не работают, в принципе кроме них больше ничего и не надо было...

возможно я много на себя беру, но может написать аналог SetCursorPos и т.д. правда даже не представляю как это реализовано в user32.dll:)


 
@!!ex ©   (2009-02-17 21:24) [33]

> [32] Slimer   (17.02.09 21:15)

пиши свой драйвер мыши и нет проблем.


 
Slimer   (2009-02-17 21:35) [34]


> пиши свой драйвер мыши и нет проблем.

ты говоришь это человеку, который создал тему в разделе "Начинающим"?)))


 
@!!ex ©   (2009-02-17 21:57) [35]

> [34] Slimer   (17.02.09 21:35)

Ну и я частенько пишу в начинающих(раз в по года примерно).
На самом деле нет особой проблемы. Примеры драйверов в инете есть. Там всне не сложно.


 
Slimer   (2009-02-17 22:38) [36]

может проще (хотя как это может быть просто) переписать функцию SetCursorPos? Да даже и переписывать не надо, просто скопировать и по другому назвать... или допустим скопировать user32.dll и в нем просто изменить название функции, и потом эту библиотеку использовать? мда... извините конечно если бред пишу))


 
@!!ex ©   (2009-02-17 22:50) [37]

> [36] Slimer   (17.02.09 22:38)

Зависит от того, как действует защитник. Я без идей как он дейстуует поэтому не могу ответить на ваш вопрос.


 
Сергей М. ©   (2009-02-18 08:38) [38]


> может проще (хотя как это может быть просто) переписать
> функцию SetCursorPos?


Если даже и проще, то кто будет переписывать ?
Так что пока см. [37] : единственный способ победить врага - это узнать все о его стратегии и тактике).. Закидать его валенками тут не получится)



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

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

Наверх




Память: 0.55 MB
Время: 0.015 c
3-1218099863
koss
2008-08-07 13:04
2009.04.05
Правильный ли подход?


2-1234964702
321
2009-02-18 16:45
2009.04.05
StringList


2-1234787510
abhtr
2009-02-16 15:31
2009.04.05
Смена кодировки Win -> DOS для string


15-1233835334
Ega23
2009-02-05 15:02
2009.04.05
Знатоки JavaScript - посоветуйте


2-1234279557
istok2
2009-02-10 18:25
2009.04.05
TStringList и sorted...