模拟键盘输入

时间:2022-05-08 18:04:32

微软有个软键盘,可以通过命令行输入osk调出来。

有时候我们想自 己模拟几个键盘按键,怎么办?其实Win32 API中有一个keybd_event可以模拟键盘按键的输入。以C#语言为例。

首先引用namesapce,并导入API。

 

  
  
  
using System.Runtime.InteropServices;

[DllImport(
" user32.dll " )]
private static extern void keybd_event( byte bVk, byte bScan, int dwFlags, int dwExtraInfo);

 

这样我们就可以在需要输入按键的地方进行模拟输入了,比如我们有一个space button,在单击这个button时,

 

  
  
  
keybd_event( 0x20 , 0 , 0 , 0 ); // 0x20为空格键

 

其它键值可以参考Virtual-Key Codes

http://msdn.microsoft.com/en-us/library/dd375731(v=VS.85).aspx