Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.041 c
15-1175706164
Углук
2007-04-04 21:02
2007.05.06
Уравнение логарифмической шкалы


2-1176733394
Strate
2007-04-16 18:23
2007.05.06
Удалить из файла кусок


15-1175851704
Vlad Oshin
2007-04-06 13:28
2007.05.06
Как прочитать из VBA excel ключ реестра?


2-1176439226
npu3pak
2007-04-13 08:40
2007.05.06
Считывание данных из таблицы (базы)


15-1176056292
Kostafey
2007-04-08 22:18
2007.05.06
Как же работает try...except ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский