C# keybd_event用法 模拟键盘输入


最近有业务需求,需要模拟键盘输入,所以了解了一下C#中keybd_event函数的用法。该函数能够产生WM_KEYUP或WM_KEYDOWN消息,即可以触发键盘事件。

函数引用如下:

[DllImport("user32.dll", EntryPoint = "keybd_event")]
        public static extern void keybd_event(
            byte bVk,
            byte bScan,
            int dwFlags,  //0: DOWN, 2: UP  
            int dwExtraInfo  //Default: 0  
        );
    }

Keybd_event()共有四个参数。 
第一个为按键的虚拟键值,可以使用枚举值System.Windows.Forms.Keys。 
第二个参数为扫描码,一般不用设置,用0代替就行。 
第三个参数为选项标志,如果为keydown则置"0",如果为keyup则设成"2"。 
第四个参数一般也是置0即可。

'A'的虚拟键值为65,所以可以用如下代码实现模拟单击'A'键。 

keybd_event(65, 0, 0, 0);
keybd_event((byte)Keys.A, 0, 2, 0);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM