![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему осн. проект получает сообщение от ДЛЛ только когда активен
artist © (2003-06-25 12:19:00)
В ДЛЛ
Const
WM_HOOOK = WM_USER + 1;
function GetMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
begin
if code = HC_ACTION then
begin
{Проверяю, нажата ли правая кнопка мыши}
if TMsg(Pointer(lParam)^).message = WM_RBUTTONDOWN then
begin
PostMessage(MainHandle, WM_HOOOK, 0, 0);
end;
end;
Result:= CallNextHookEx(GlobalData^.SysHook, Code, wParam, lParam);
end;
В осн. проекте:
procedure TForm1.myhoook(var Message: TMessage);
begin
Edit1.Text:=Edit1.Text+"aa";
end;
artist (2003-06-25 16:32:00) [1]
Спасибо
Cobalt (2003-06-25 12:49:00) [2]
Дык, MainHandle откуда заполняется-то?
Вот то-то. А должен тоже хранится в межпроцесснойGlobalData, а не в локальной переменной процесса.