Форум: "WinAPI";
Текущий архив: 2003.01.27;
Скачать: [xml.tar.bz2];
ВнизОбработка сообщений в HOOKке Найти похожие ветки
← →
plaha999 (2002-12-10 13:35) [0]Уважаемые мастера, подскажите как мне при обработке сообщения, которое я ловлю в своем хуке узнать HWND или HANDLE того, от кого это сообщение произошло???
Я имею процедурку перехвата сообщений:
function SysMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
begin
if code = HC_ACTION then
begin
{Проверяю, нажата ли правая кнопка мыши}
if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN then
begin
{Здесь мне надо получить HWND или HANDLE
того, от кого это сообщение произошло}
end;
{Пытаемся передать сообщение дальше по цепочке hook-ов}
Result:= CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
end;
Если кто знает, подскажите,
не успеваю дописать научную работу :-(
← →
Song (2002-12-10 13:46) [1]Вот Вы почему-то message используете, а на остальные поля записи посмотреть не хотите:
type
TMsg = packed record
hwnd: HWND;
message: UINT;
wParam: WPARAM;
lParam: LPARAM;
time: DWORD;
pt: TPoint;
end;
← →
plaha999 (2002-12-10 14:37) [2]Если сообщение пришло от моей формы, то hWnd совпадает с hWnd формы, а если от рабочего стола, то он почему-то не равен GetDeskTopWindow: hWND;
ПОЧЕМУ???
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.01.27;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c