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

Вниз

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
Это низкоуровневый фильтр клавы. Может поможет ?



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
1-32905
vpc_
2002-03-29 23:44
2002.04.11
Как изменить системную дату на компьютере с помощью Delphi.


3-32639
Юрий Федоров
2002-03-18 16:52
2002.04.11
Сессия Oracle


3-32679
vitnt2000
2002-03-20 07:05
2002.04.11
SQL Запрос


6-32926
Gsn
2002-01-29 12:54
2002.04.11
Как узнать об активных соединениях с моим компом???


3-32717
onix
2002-03-21 13:24
2002.04.11
Удаление текущей записи из Dataset a