• XSS.stack #1 – первый литературный журнал от юзеров форума

Нажатие на иконку

Blackbeard

CD-диск
Пользователь
Регистрация
06.12.2014
Сообщения
14
Реакции
0
Здравствуйте, уважаемые форумчане.

Вопрос в следующем:
Каким образом осуществить правый клик мышью по иконке в сис.трее, если мне известны ее координаты.
Часть кода:

Код:
; в ESI -координата X
; в EDI -координата Y
; MAKELPARAM(X, Y)
mov edx, edi
shl edx, 16
or edx, esi 
xchg esi, edx

invoke PostMessage, hToolbarWnd, WM_RBUTTONDOWN, MK_RBUTTON, esi
invoke PostMessage, hToolbarWnd, WM_RBUTTONUP, MK_RBUTTON, esi

Собственно, PostMessage не оказывает нужного эффекта. Вопрос - как решить?
 
Действиельно помог Spy++, а также вычисление координат относительно hToolbarWnd :)

кому интересно - решение:
Код:
...
; координаты нужной иконки относительно всего десктопа
mov esi, rcIcon.left
add esi, 12
mov edi, rcIcon.top
add edi, 12

; MAKELPARAM(X, Y)
mov edx, edi
shl edx, 16
or edx, esi 
mov dwRealCoords, edx

; координаты относительно hToolbarWnd 
invoke GetWindowRect, hToolbarWnd, addr rcTrayWnd
sub esi, rcTrayWnd.left
sub edi, rcTrayWnd.top

; MAKELPARAM(X, Y)
mov edx, edi
shl edx, 16
or edx, esi 
xchg esi, edx

invoke PostMessage, hToolbarWnd, WM_SETCURSOR, hToolbarWnd, MAKELPARAM(HTCLIENT, WM_MOUSEMOVE)
invoke PostMessage, hToolbarWnd, WM_MOUSEMOVE, 0, dwRealCoords
invoke PostMessage, hToolbarWnd, WM_MOUSEACTIVATE, 100F8h, MAKELPARAM(HTCLIENT, WM_RBUTTONDOWN)
invoke PostMessage, hToolbarWnd, WM_SETCURSOR, hToolbarWnd, MAKELPARAM(HTCLIENT, WM_RBUTTONDOWN)
invoke PostMessage, hToolbarWnd, WM_RBUTTONDOWN, MK_RBUTTON, esi                        
invoke PostMessage, hToolbarWnd, WM_SETCURSOR, hToolbarWnd, MAKELPARAM(HTCLIENT, WM_RBUTTONUP	
invoke PostMessage, hToolbarWnd, WM_RBUTTONUP, MK_RBUTTON, esi
...
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх