当前位置: 首页 > 编程语言 > C#

模拟ctrl键按下事件和ctrl键弹起事件后,Ctrl键保持按下状态分享

时间:2023-04-11 03:27:18 C#

在模拟ctrl键按下事件和ctrl键弹起事件后,Ctrl键保持按下状态程序,使用系统keybd_event模拟ctr+c和ctr+v(复制和粘贴)事件。问题是程序运行后,计算机一直按下ctrl键,然后-如果我键入它会选择整个文档,如果我滚动鼠标滚轮它会更改文本方面,等等。不仅在VisualStudio编辑器中,但在该程序以Word等形式运行时打开的任何其他程序。这是我的代码://系统键盘事件。[System.Runtime.InteropServices.DllImport("user32.dll",SetLastError=true)]staticexternvoidkeybd_event(bytebVk,bytebScan,intdwFlags,intdwExtraInfo);publicconstintKEYEVENTF_EXTENDEDKEY=0x0001;//按键按下标志publicconstintKEYEVENTF_KEYUP=0x0002;//键上标志publicconstintVK_LCONTROL=0xA2;//左控制键代码publicconstintC=0x43;//C键代码publicconstintV=0x56;//V键代码staticvoidMain(string[]args){Thread.Sleep(1000);//所以我有时间选择一些东西。//模拟ctrl+ckeybd_event(VK_LCONTROL,0,KEYEVENTF_EXTENDEDKEY,0);keybd_event(C,0,KEYEVENTF_EXTENDEDKEY,0);keybd_event(C,0,KEYEVENTF_KEYUP,0);keybd_event(VK_LCONTROL,0,KEYEVENTF_KEYUP,0);//模拟ctrl+vkeybd_event(VK_LCONTROL,0,KEYEVENTF_EXTENDEDKEY,0);keybd_event(V,0,KEYEVENTF_EXTENDEDKEY,0);keybd_event(V,0,KEYEVENTF_KEYUP,0);keybd_event(VK_LCONTROL,0,KEYEVENTF_K埃普,0);有谁知道我能做些什么来解决这个问题?这是解决方案,非常适合我注意发送到keybd_event的参数更改。我使用了CodeProject的一篇文章,链接:http://www.codeproject.com/Articles/7305/Keyboard-Events-Simulation-using-keybd-event-funct。这是我修改过的代码://系统键盘事件。[System.Runtime.InteropServices.DllImport("user32.dll",SetLastError=true)]staticexternvoidkeybd_event(bytebVk,bytebScan,intdwFlags,intdwExtraInfo);publicconstintKEYEVENTF_KEYUP=0x0002;//键上标志publicconstintVK_CONTROL=0x11;//控制键码publicconstintC=0x43;//C键代码publicconstintV=0x56;//V键代码staticvoidMain(string[]args){Thread.Sleep(1000);//所以我有时间选择一些东西。//模拟Ctrl+Ckeybd_event(VK_CONTROL,0x9d,0,0);//Ctrl按下keybd_event(C,0x9e,0,0);//'A'按下keybd_event(C,0x9e,KEYEVENTF_KEYUP,0);//'A'释放keybd_event(VK_CONTROL,0x9d,KEYEVENTF_KEYUP,0);//Ctrl释放//模拟Ctrl+Vkeybd_event(VK_CONTROL,0x9d,0,0);//Ctrl按下keybd_event(V,0x9e,0,0);//'A'按下keybd_event(V,0x9e,KEYEVENTF_KEYUP,0);//'A'释放keybd_event(VK_CONTROL,0x9d,KEYEVENTF_KEYUP,0);//Ctrl相对ease}我希望这对某人有所帮助感谢所有帮助过我的人!以上就是C#学习教程:模拟ctrl键按下事件和ctrl键弹起事件后,Ctrl键保持按下,分享全部内容。如果对大家有用,需要进一步了解C#学习教程,还望大家多加关注——本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: