首页 > 其他 > 详细

模拟键盘按键,将字符转换为虚拟键码

时间:2015-05-08 20:02:17      阅读:1590      评论:0      收藏:0      [点我收藏+]

通过oemKeyScan和MapVirtualKey函数

oemKeyScan可以获得扫描码以及转换状态,状态有shift被按下,ctrl被按下,alt被按下等等。

MapVirtualKey将一虚拟键码翻译(映射)成一扫描码或一字符值,或者将一扫描码翻译成一虚拟键码。

 1 DWORD   sc, shift;
 2 unsigned   char   vkey;
 3 char   a;
 4 CString str = "abc";
 5 for (int i = 0; i<str.GetLength(); i++)//模拟键盘输出str中的字符
 6 {
 7     a = str.GetAt(i);
 8     sc = OemKeyScan(a);
 9     shift = sc >> 16;
10     vkey = MapVirtualKey(sc & 0xffff, 1);
11     if (shift)
12         keybd_event(VK_SHIFT, 0, 0, 0);
13     keybd_event(vkey, 0, 0, 0);
14     keybd_event(vkey, 0, KEYEVENTF_KEYUP, 0);
15     if (shift)
16         keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0);
17 }

 

模拟键盘按键,将字符转换为虚拟键码

原文:http://www.cnblogs.com/macher/p/4488606.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!