S
solova
С хуками понемногу разбираюсь уже.
Хочу создать программку которая отслеживает нажатие на определённую кнопку в ToolbarWindow32 на чужом окне.
Длл уже есть, и программка включающая Хук тоже есть.
Проблема вот в чём.
В функции установки хука
SetWindowsHookEx( WH_CALLWNDPROC, Функция Хука, HINSTANCE hMod, DWORD dwThreadId);
В "DWORD dwThreadId" я сую ID который получаю следующим образом.
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Пример</div></div><div class="sp-body"><div class="sp-content">HWND hWnd= ::FindWindow(L"Имя окна программы",NULL);
hWnd = ::GetWindow(hWnd,GW_CHILD);
hWnd = ::GetWindow(hWnd,GW_HWNDNEXT);
.......
if (hWnd)
SETHook(GetWindowThreadProcessId(hWnd,NULL));
Ну и я могу достать Хэндл только от "ToolbarWindow32", потому что для кнопок его нету.
Есть ли какие способы реализовать слежку только для одной кнопки , а не для всего Toolbar-а ?
Если нет, то как после установки хука на "ToolbarWindow32" получив мессагу типа WM_MOUSEACTIVATE или какой нибудь клик мышки ,определить какая именно кнопка была нажата. Например по "Caption" и т.п..
Хочу создать программку которая отслеживает нажатие на определённую кнопку в ToolbarWindow32 на чужом окне.
Длл уже есть, и программка включающая Хук тоже есть.
Проблема вот в чём.
В функции установки хука
SetWindowsHookEx( WH_CALLWNDPROC, Функция Хука, HINSTANCE hMod, DWORD dwThreadId);
В "DWORD dwThreadId" я сую ID который получаю следующим образом.
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Пример</div></div><div class="sp-body"><div class="sp-content">HWND hWnd= ::FindWindow(L"Имя окна программы",NULL);
hWnd = ::GetWindow(hWnd,GW_CHILD);
hWnd = ::GetWindow(hWnd,GW_HWNDNEXT);
.......
if (hWnd)
SETHook(GetWindowThreadProcessId(hWnd,NULL));
Ну и я могу достать Хэндл только от "ToolbarWindow32", потому что для кнопок его нету.
Есть ли какие способы реализовать слежку только для одной кнопки , а не для всего Toolbar-а ?
Если нет, то как после установки хука на "ToolbarWindow32" получив мессагу типа WM_MOUSEACTIVATE или какой нибудь клик мышки ,определить какая именно кнопка была нажата. Например по "Caption" и т.п..