我如何发送键盘命令,以便他们按“Y”,然后按回车键。谢谢
最佳答案
这是一篇关于此事的 CodeProject 文章:http://www.codeproject.com/KB/cpp/sendkeys_cpp_Article.aspx
还有一篇描述如何操作的 msdn 文章: http://msdn.microsoft.com/en-us/library/ms171548.aspx
另一篇 CodeProject 文章描述了如何使用 keybd_event(): http://www.codeproject.com/KB/system/keyboard.aspx
不确定这是如何工作的(我不是 C++ 开发人员),但它应该将字母“a”发送到记事本(您需要打开一个名为“test.txt”的文件):来自专家的交换(我添加了更正,但我没有尝试运行它):http://www.experts-exchange.com/Programming/Programming_Languages/Cplusplus/Q_21119534.html
#define _WIN32_WINNT 0x0501
#include <windows.h>
#include <iostream>
using namespace std;
void main()
{
char end;
HWND windowHandle = FindWindow(0, "test.txt - Notepad");
INPUT *key;
if(windowHandle == NULL)
cout << "not found";
SetForegroundWindow(windowHandle);
Sleep(1000);
key = new INPUT;
key->type = INPUT_KEYBOARD;
key->ki.wVk = 41;
key->ki.dwFlags = 0;
key->ki.time = 0;
key->ki.wScan = 0;
key->ki.dwExtraInfo = 0;
SendInput(1,key,sizeof(INPUT));
key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
SendInput(1,key,sizeof(INPUT));
cout << "key inputted";
cin >> end;
}
关于c++ - 发送键盘命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3410972/