Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Вниз

hooks 


dip56245   (2002-01-31 16:28) [0]

Господа, такая проблема: создал библиотеку(хук) для перехвата кнопок вне приложения, работает нормально, только если приложение виндовое, под FAR, DN или других не вин. приложениях - непашет! как это исправить?



Виктор Щербаков   (2002-01-31 16:55) [1]

Значит сообщения, связанные с клавиатурой в них не отправляются.

Windows maintains a single system message queue and any number of thread message queues, one for each GUI thread. To avoid the overhead of creating a message queue for non-GUI threads, all threads are created initially without a message queue. The system creates a thread"s message queue only when the thread makes its first call to one of the Win32 API User or GDI functions.

Кстати FAR - просто консольный, т.е. он не ДОСовый.



dip56245   (2002-02-03 20:30) [2]

Ну так как мне перехватить нажатие клавишь в консольных и ДОСовских прогах? На 21h вешаться?



Serg001   (2002-02-04 08:42) [3]

Чувак, покажи свою функцию hook.



ggrisha   (2002-02-04 09:41) [4]

Можно непосредственно опрашивать порт клавиатуры, но к сожалению под win2k это не проходит.



dip56245   (2002-02-07 23:06) [5]

function KeyboardProc(Code: Integer; wParam, lParam: Integer): Integer; stdcall;
begin
if (Code >= 0) and ((HiWord(lParam) and KF_ALTDOWN) <> KF_ALTDOWN) and ((HiWord(lParam) and KF_REPEAT) <> KF_REPEAT) and ((HiWord(lParam) and KF_UP) <> KF_UP) then begin
if IsWindow(PProgData.WndMain) then PostMessage(PProgData.WndMain, HM_ACTION, Ord(haKBD), wParam);
end;
Result := CallNextHookEx(PProgData^.Hooks.KeyboardHook, Code, wParam, lParam);
end;

Вот мой хук - из-под ФАРа не передает кнопки! 8(



Fellomena   (2002-02-08 12:00) [6]

Приведи код в котором ты hook ставишь.
Попробуй ставить не WH_KEYBOARD, а WH_KEYBOARD_LL
Это низкоуровневый фильтр клавы. Может поможет ?




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.042 c
1-32759           lipskiy               2002-03-30 20:14  2002.04.11  
Сложный вопрос-предложение. Помогите включить поддержку кириллицы


14-32939          vbazik                2002-03-02 01:47  2002.04.11  
Совет по DualHeard video


1-32769           новенький в Делфи     2002-03-30 14:17  2002.04.11  
Обработчик событий


6-32908           perov                 2002-01-25 10:44  2002.04.11  
Одинаково ли работают разные FTP-сервера?


4-33012           kasper                2002-02-11 22:20  2002.04.11  
подскажите как удалять каталоги самые ранние по времени создания