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

Вниз

Помогите с кодом   Найти похожие ветки 

 
novenkiy   (2003-09-15 10:13) [0]

Помогите добавить код так что бы хук срабатывал не на нажатия Q или W, a на нажатие Alt+Q и Alt+W

library lib;

uses
Windows, Messages;
var
H: THandle;
hw: hwnd;

function KeyboardProc(c0de, wm_char, lParam : integer): Lresult; stdcall;
begin
if (c0de =HC_ACTION) then

begin
case wm_char of
ord("Q"):
begin

keybd_event(VK_BACK,0,0,0);
keybd_event(vk_menu,0,0,0);
keybd_event( VK_NUMPAD0, MapVirtualKey(Vk_NumPad0,0), 0, 0 );
keybd_event( VK_NUMPAD0, MapVirtualKey(Vk_NumPad0,0), KEYEVENTF_KEYUP, 0 );
keybd_event( VK_NUMPAD1, MapVirtualKey(Vk_NumPad1,0), 0, 0 );
keybd_event( VK_NUMPAD1, MapVirtualKey(Vk_NumPad1,0), KEYEVENTF_KEYUP, 0 );
keybd_event( VK_NUMPAD5, MapVirtualKey(Vk_NumPad5,0), 0, 0 );
keybd_event( VK_NUMPAD5, MapVirtualKey(Vk_NumPad5,0), KEYEVENTF_KEYUP, 0 );
keybd_event( VK_NUMPAD6, MapVirtualKey(Vk_NumPad6,0), 0, 0 );
keybd_event( VK_NUMPAD6, MapVirtualKey(Vk_NumPad6,0), KEYEVENTF_KEYUP, 0 );
keybd_event(vk_menu,0,KEYEVENTF_KEYUP,0);
end;

ORD("W"):
begin
hw:=GetForegroundWindow;
SetWindowText(hw,"Хук работает");
end;
end;
end else

begin
result := CallNextHookEx(H, c0de, wm_char, lParam);
exit;
end;

result := CallNextHookEx(H, c0de, wm_char, lParam);
end;

procedure sethook;
begin
H:= SetWindowsHookEx(WH_keyboard, @KeyboardProc, hInstance, 0);
if H = 0 then
messageBox(0,"Не получилось...","ERROR",mb_iconhand);
end;

procedure removehook;
begin
UnhookWindowsHookEx(H);
end;

exports
sethook index 1 name "sethook",
removehook index 2 name "removehook",

end.


 
AlexRush   (2003-09-15 12:05) [1]

см. keystroke - lParam в KeyboardProc
Keystroke Message Flags:
бит 29 - Context Code. The context code indicates whether the ALT key was down when the keystroke message was generated. The code is 1 if the ALT key was down and 0 if it was up.
1 - ALT нажат, иначе нет.


 
novenkiy   (2003-09-25 15:44) [2]

Удалено модератором
Примечание: В детский сад


 
novenkiy   (2003-09-25 16:09) [3]

Удалено модератором


 
novenkiy   (2003-09-25 16:10) [4]

Удалено модератором


 
HolACost!   (2003-09-25 16:27) [5]

Удалено модератором
Примечание: Флейм



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

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

Наверх





Память: 0.45 MB
Время: 0.013 c
3-65789
jazz
2003-10-30 17:23
2003.11.20
Не могу правильно создать триггер


1-65910
Felixx
2003-11-08 15:21
2003.11.20
Замена стандартному компоненту TStringGrid


1-65882
dead1
2003-11-11 15:11
2003.11.20
Массив


1-65916
Quit
2003-11-08 12:30
2003.11.20
Выбор горячих клавиш


11-65803
bvv
2003-03-09 12:31
2003.11.20
рул





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский