VS编程中,有些程序不支持WM_PASTE消息(如word),只能模拟键盘实现粘贴操作。
Windows系统下粘贴的快捷键有2个:Ctrl+V或者SHIFT+INSERT,参考代码如下:
{
INPUT inputs[4];
memset(inputs, 0, sizeof(inputs));
inputs[0].type = INPUT_KEYBOARD;
inputs[0].ki.wVk = VK_CONTROL; //VK_SHIFT
inputs[0].ki.wScan = 0x1d; //0x2A
inputs[0].ki.dwFlags = 0; //KEYDOWN flag
inputs[1].type = INPUT_KEYBOARD;
inputs[1].ki.wVk = 'V'; //VK_INSERT
inputs[1].ki.wScan = 0x2f; //0x52
inputs[1].ki.dwFlags = 0; //KEYDOWN flag
inputs[2].type = INPUT_KEYBOARD;
inputs[2].ki.wVk = 'V'; //VK_INSERT
inputs[2].ki.wScan = 0x2f; //0x52
inputs[2].ki.dwFlags = KEYEVENTF_KEYUP;
inputs[3].type = INPUT_KEYBOARD;
inputs[3].ki.wVk = VK_CONTROL; //VK_SHIFT
inputs[3].ki.wScan = 0x1d; //0x2A
inputs[3].ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(4, inputs, sizeof(INPUT));
}
在VS编程环境中,对于不支持WM_PASTE消息的应用(如Word),本文介绍如何通过模拟Ctrl+V或SHIFT+INSERT键盘操作来实现粘贴功能。提供了详细的代码示例,展示如何使用Windows API SendInput函数发送键盘输入事件。
1万+

被折叠的 条评论
为什么被折叠?



