C# keybd_event模擬對照表以及用法.


Windows提供了一個模擬鍵盤API函數Keybd_event(),該函數能觸發一個按鍵事件,也就是說會產生一個WM_KEYDOWN或WM_KEYUP消息。     

   [DllImport("user32.dll", EntryPoint = "keybd_event")]

        public static extern void keybd_event(

            byte bVk,    //虛擬鍵值

            byte bScan,// 一般為0

            int dwFlags,  //這里是整數類型  0 為按下,2為釋放

            int dwExtraInfo  //這里是整數類型 一般情況下設成為 0

        );        

使用方法:

            keybd_event((byte)Keys.LWin, 0, 0, 0);   //按下LWIN

            keybd_event((byte)Keys.D, 0, 0, 0);         //按下D

            keybd_event((byte)Keys.LWin, 0, 2, 0);   //釋放LWIN

            keybd_event((byte)Keys.D, 0, 2, 0);        //釋放D

補充:

1.調用API函數記得引用:using System.Runtime.InteropServices;

2.表格如下,是轉過來的。

PS:如果上面(byte)keys.Alt等出現overflow 的問題,可以直接用表格的數字來代替。

 

虛擬鍵碼
對應值
對應鍵
VK_LBUTTON
1
鼠標左鍵
VK_RBUTTON
2
鼠標右鍵
VK_CANCEL
3
Cancel
VK_MBUTTON
4
鼠標中鍵
VK_XBUTTON1
5
VK_XBUTTON2
6
VK_BACK
8
Backspace
VK_TAB
9
Tab
VK_CLEAR
12
Clear
VK_RETURN
13
Enter
VK_SHIFT
16
Shift
VK_CONTROL
17
Ctrl
VK_MENU
18
Alt
VK_PAUSE
19
Pause
VK_CAPITAL
20
Caps Lock
VK_KANA
21
VK_HANGUL
21
VK_JUNJA
23
VK_FINAL
24
VK_HANJA
25
VK_KANJI
25*
VK_ESCAPE
27
Esc
VK_CONVERT
28
VK_NONCONVERT
29
VK_ACCEPT
30
VK_MODECHANGE
31
VK_SPACE
32
Space
VK_PRIOR
33
Page Up
VK_NEXT
34
Page Down
VK_END
35
End
VK_HOME
36
Home
VK_LEFT
37
Left Arrow
VK_UP
38
Up Arrow
VK_RIGHT
39
Right Arrow
VK_DOWN
40
Down Arrow
VK_SELECT
41
Select
VK_PRINT
42
Print
VK_EXECUTE
43
Execute
VK_SNAPSHOT
44
Snapshot
VK_INSERT
45
Insert
VK_DELETE
46
Delete
VK_HELP
47
Help
48
0
49
1
50
2
51
3
52
4
53
5
54
6
55
7
56
8
57
9
65
A
66
B
67
C
68
D
69
E
70
F
71
G
72
H
73
I
74
J
75
K
76
L
77
M
78
N
79
O
80
P
81
Q
82
R
83
S
84
T
85
U
86
V
87
W
88
X
89
Y
90
Z
VK_LWIN
91
VK_RWIN
92
VK_APPS
93
VK_SLEEP
95
VK_NUMPAD0
96
小鍵盤 0
VK_NUMPAD1
97
小鍵盤 1
VK_NUMPAD2
98
小鍵盤 2
VK_NUMPAD3
99
小鍵盤 3
VK_NUMPAD4
100
小鍵盤 4
VK_NUMPAD5
101
小鍵盤 5
VK_NUMPAD6
102
小鍵盤 6
VK_NUMPAD7
103
小鍵盤 7
VK_NUMPAD8
104
小鍵盤 8
VK_NUMPAD9
105
小鍵盤 9
VK_MULTIPLY
106
小鍵盤 *
VK_ADD
107
小鍵盤 +
VK_SEPARATOR
108
小鍵盤 Enter
VK_SUBTRACT
109
小鍵盤 -
VK_DECIMAL
110
小鍵盤 .
VK_DIVIDE
111
小鍵盤 /
VK_F1
112
F1
VK_F2
113
F2
VK_F3
114
F3
VK_F4
115
F4
VK_F5
116
F5
VK_F6
117
F6
VK_F7
118
F7
VK_F8
119
F8
VK_F9
120
F9
VK_F10
121
F10
VK_F11
122
F11
VK_F12
123
F12
VK_F13
124
VK_F14
125
VK_F15
126
VK_F16
127
VK_F17
128
VK_F18
129
VK_F19
130
VK_F20
131
VK_F21
132
VK_F22
133
VK_F23
134
VK_F24
135
VK_NUMLOCK
144
Num Lock
VK_SCROLL
145
Scroll
VK_LSHIFT
160
VK_RSHIFT
161
VK_LCONTROL
162
VK_RCONTROL
163
VK_LMENU
164
VK_RMENU
165
VK_BROWSER_BACK
166
VK_BROWSER_FORWARD
167
VK_BROWSER_REFRESH
168
VK_BROWSER_STOP
169
VK_BROWSER_SEARCH
170
VK_BROWSER_FAVORITES
171
VK_BROWSER_HOME
172
VK_VOLUME_MUTE
173
VolumeMute
VK_VOLUME_DOWN
174
VolumeDown
VK_VOLUME_UP
175
VolumeUp
VK_MEDIA_NEXT_TRACK
176
VK_MEDIA_PREV_TRACK
177
VK_MEDIA_STOP
178
VK_MEDIA_PLAY_PAUSE
179
VK_LAUNCH_MAIL
180
VK_LAUNCH_MEDIA_SELECT
181
VK_LAUNCH_APP1
182
VK_LAUNCH_APP2
183
VK_OEM_1
186
; :
VK_OEM_PLUS
187
= +
VK_OEM_COMMA
188
VK_OEM_MINUS
189
- _
VK_OEM_PERIOD
190
VK_OEM_2
191
/ ?
VK_OEM_3
192
` ~
VK_OEM_4
219
[ {
VK_OEM_5
220
\ |
VK_OEM_6
221
] }
VK_OEM_7
222
' "
VK_OEM_8
223
VK_OEM_102
226
VK_PACKET
231
VK_PROCESSKEY
229
VK_ATTN
246
VK_CRSEL
247
VK_EXSEL
248
VK_EREOF
249
VK_PLAY
250
VK_ZOOM
251
VK_NONAME
252
VK_PA1
253
VK_OEM_CLEAR
254
 

ASCII碼
鍵盤
ASCII 碼
鍵盤
ASCII 碼
鍵盤
ASCII 碼
鍵盤
27
ESC
32
SPACE
33
!
34
"
35
#
36
$
37
%
38
&
39
'
40
(
41
)
42
*
43
+
44
'
45
-
46
.
47
/
48
0
49
1
50
2
51
3
52
4
53
5
54
6
55
7
56
8
57
9
58
:
59
;
60
61
=
62
63
?
64
@
65
A
66
B
67
C
68
D
69
E
70
F
71
G
72
H
73
I
74
J
75
K
76
L
77
M
78
N
79
O
80
P
81
Q
82
R
83
S
84
T
85
U
86
V
87
W
88
X
89
Y
90
Z
91
[
92
\
93
]
94
^
95
_
96
`
97
a
98
b
99
c
100
d
101
e
102
f
103
g
104
h
105
i
106
j
107
k
108
l
109
m
110
n
111
o
112
p
113
q
114
r
115
s
116
t
117
u
118
v
119
w
120
x
121
y
122
z
123
{
124
|
125
}
126
~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM