Вниз
Скачать: CL | DM;

Почему нет реакции на сообщение?   Найти похожие ветки 

 
fag2000@ok.ru ©   (2002-03-04 17:00) [0]

Проблема в с ледующем почему-то когда окно главной формы становится неактивным оно перестает воспринимать мои сообщения. Если его снова активировать то все впорядке. Сообщения посылаются из глобального HOOK"а на клаву .

//Код для обработки сообщений
const KeyMessageId=1111;
Type
TMainForm = Class(TForm)
...
Private
Procedure WM_KeyMessage(Var Message: TMessage); Message KeyMessageId;
....
Protected
End;
Procedure TMainForm.WM_KeyMessage(var Message: TMessage);
Begin
Memo1.Lines.Add("Char: "+Chr(Message.wParam));
End;
//код для посылки сообщений из DLL
//ms-код моего сообщения
Function SetKeyboardHook(Wnd: HWND;ms:integer): integer; stdcall;
Begin
If ShareInf<>Nil Then
Begin
MsgId:=ms;
WndHandle:=Wnd;
HookHandle:=SetWindowsHookEx(WH_KEYBOARD, @KeyboardHook, HInstance, 0);
Result:=HookHandle;
End
Else Result:=0;
End;

Function KeyboardHook(Code: Integer; ParamW: WPARAM; ParamL: LPARAM): LRESULT;stdcall;
Begin
SendMessage(WndHandle, MsgId, ParamW, Code);
Result := CallNextHookEx(HookHandle, Code, ParamW, ParamL);
End;


 
Sasha9 ©   (2002-03-04 19:26) [1]

хук нужно делать глобальный т.е. Function KeyboardHook(...) писать в DLL"ке


 
Юрий Зотов ©   (2002-03-04 21:14) [2]

И даже в этом случае будет то же самое. Проблема - в переменных WndHandle, MsgID и HookHandle. Они будут проинициализированы только в одном процессе, а надо во всех.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
4-57568
Alexeyk
2002-01-21 12:18
2002.03.18
Немогу разобраться-как можно управлять уровнем громкости


7-57537
Serg!
2001-12-13 14:20
2002.03.18
Подскажите плз каким образом можно узнать кол-во процессоров на компе и их загрузку


7-57545
Lizard
2001-12-09 12:03
2002.03.18
Как запихнуть в .res файл два файла и затем распаковать их с помощью другой проги в разные директории ?


3-57304
Стас
2002-02-19 11:42
2002.03.18
Btrieve+Delphi


14-57502
Дмитрий_Б
2002-01-18 15:34
2002.03.18
Работает ли кто-нибудь в электросвязи ?




   Наверх