模拟键盘API函数Keybd_event用法
模拟键盘API函数Keybd_event用法Windows提供了一个模拟键盘API函数Keybd_event(),使用该函数可以相应的屏蔽键盘的动作。Keybd_event()函数能触发一个按键事件,也就是说会产生一个WM_KEYDOWN或WM_KEYUP消息。win32api.keybd_event该函数原型如下:VOID keybd_event(
BYTE bVk, // virtual-key code
BYTE bScan, // hardware scan code
DWORD dwFlags, // flags specifying various function options
DWORD dwExtraInfo // additional data associated with keystroke
); 从原型可以看出,Keybd_event()共有四个参数:
第一个为按键的虚拟键值,如回车键为vk_return, tab键为vk_tab(其他具体的参见附录:常用模拟键的键值对照表); 第二个参数为扫描码,一般不用设置,用0代替就行; 第三个参数为选项标志,如果为keydown则置0即可,如果为keyup则设成"KEYEVENTF_KEYUP"; 第四个参数一般也是置0即可。
例子1:模拟按下'A'键keybd_event(65,0,0,0);
keybd_event(65,0,KEYEVENTF_KEYUP,0);例子2:模拟按下'ALT+F4'键keybd_event(18,0,0,0);
keybd_event(115,0,0,0);
keybd_event(115,0,KEYEVENTF_KEYUP,0);
keybd_event(18,0,KEYEVENTF_KEYUP,0);附:常用模拟键的键值对照表(实际上字母的大小写键代码是不同的 ) 字母和数字键 数字小键盘的键
功能键 其它键
键 键码 键 键码 键 键码 键 键码
A 65 0 96 F1 112 Backspace 8
B 66 1 97 F2 113 Tab 9
C 67 2 98 F3 114 Clear 12
D 68 3 99 F4 115 Enter 13
E 69 4 100 F5 116 Shift 16
F 70 5 101 F6 117 Control 17
G 71 6 102 F7 118 Alt 18
H 72 7 103 F8 119 Caps Lock 20
I 73 8 104 F9 120 Esc 27
J 74 9 105 F10 121 Spacebar 32
K 75 * 106 F11 122 Page Up 33
L 76 + 107 F12 123 Page Down 34
M 77 Enter 108 -- -- End 35
N 78 - 109 -- -- Home 36
O 79 . 110 -- -- Left Arrow 37
P 80 / 111 -- -- Up Arrow 38
Q 81 -- -- -- -- Right Arrow 39
R 82 -- -- -- -- Down Arrow 40
S 83 -- -- -- -- Insert 45
T 84 -- -- -- -- Delete 46
U 85 -- -- -- -- Help 47
V 86 -- -- -- -- Num Lock 144
W 87
X 88
Y 89
Z 90
0 48
1 49
2 50
3 51
4 52
5 53
6 54
7 55
8 56
9 57
按键键码按键键码按键键码按键键码
A656(数字键盘)102;59:58
B667(数字键盘)103=61+ 43
C678(数字键盘)104,44< 60
D689(数字键盘)105-45_95
E69*106.46> 62
F70!33/47?63
G71Enter13`96~126
H72@64[91{123
I73#35\92|124
J74$36}125]93
K75F1112a97b98
L76F2113c99d100
M77F3114e101f102
N78F4115g103h104
O79F5116i105j106
P80F6117k107l108
Q81F7118m109n110
R82F8119o111p112
S83F9120q113r114
T84F10121s115t116
U85F11122u117v118
V86F12123w119x120
W87Backspace8y121z122
X88Tab90(数字键盘)96Up Arrow38
Y89Clear121(数字键盘)97Right Arrow39
Z90Shift162(数字键盘)98Down Arrow40
0(小键盘)48Control173(数字键盘)99Insert45
1(小键盘)49Alt184(数字键盘)100Delete46
2(小键盘)50Cap Lock205(数字键盘)101Num Lock144
3(小键盘)51Esc272(数字键盘)98Down Arrow40
4(小键盘)52Spacebar323(数字键盘)99Insert45
5(小键盘)53Page Up334(数字键盘)100Delete46
6(小键盘)54Page Down345(数字键盘)101Num Lock144
7(小键盘)55End35
8(小键盘)56Home36
9(小键盘)57Left Arrow37
页:
[1]