Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.06;
Скачать: CL | DM;

Вниз

ловушка и форма   Найти похожие ветки 

 
Blacksus   (2007-02-05 00:18) [0]

У меня такая проблемма: в системе устанавливается глобальная ловушка, которая отлавливает нажатие клавиши, при срабатывании ловушки имя нажатой клавиши должно передаваться в форму главного окна в поле TEdit, но почему то это не срабатывает...

function SysMsgProc(code:integer;wParam:word;lParam:longint) : longint; export; stdcall;
var
KeyName:array[0..16] of char;
begin
if Code >= 0 then
begin
 Getkeynametext(lParam,Keyname,sizeof(keyname));
 if (lParam and $40000000=0) then
   begin
    form1.edit1.text:=keyname;
   end;
 Result:=0;
end
else
  Result := CallNextHookEx(SysHook,Code, wParam, lParam);
end;


 
Eraser ©   (2007-02-05 01:00) [1]

> [0] Blacksus   (05.02.07 00:18)

прежде чем писАть хуки не плохо бы почитать того же Рихтера.

> form1.edit1.text:=keyname;

грубейшая ошибка в данном контексте, особенно если хук не low level.


 
Blacksus   (2007-02-05 01:07) [2]

я с хуками впервые сталкиваюсь, может подскажет кто-нибудь как передать данные в главное окно?


 
Eraser ©   (2007-02-05 01:11) [3]

> [2] Blacksus   (05.02.07 01:07)

самый простой способ - с помощю сообщения WM_COPYDATA.


 
Blacksus   (2007-02-05 01:21) [4]

А можно без API обойтись, чтобы внутри программы эти данные передавались?


 
BOGa   (2007-03-09 16:09) [5]

Я думал, что я плохой программист



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

Текущий архив: 2007.05.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
4-1165861561
Ihtiandr
2006-12-11 21:26
2007.05.06
Функция, изменяющая расскладку клавиатуры


2-1176529067
Romm
2007-04-14 09:37
2007.05.06
Помогите найти ошибку


15-1176018141
Чапаев
2007-04-08 11:42
2007.05.06
Поможыте, люди добрые!


2-1176436516
Alex7
2007-04-13 07:55
2007.05.06
Конструкция SQL из нескольких JOIN для MS Access


2-1176541789
ppcumax
2007-04-14 13:09
2007.05.06
Помогите с TClientSocket, замучался уже...