我正在使用 keybd_event();我想使用 SendMessage();将击键发送到记事本,可以这样做吗?
最佳答案
使用 SendMessage
将文本插入编辑缓冲区(这听起来像您想要的):
HWND notepad = FindWindow(_T("Notepad"), NULL);
HWND edit = FindWindowEx(notepad, NULL, _T("Edit"), NULL);
SendMessage(edit, WM_SETTEXT, NULL, (LPARAM)_T("hello"));
如果你需要键码和任意击键,你可以使用SendInput()
(在 2k/xp 和首选中可用),或 keybd_event()
`(最终会在较新的操作系统中调用 SendInput)这里有一些例子:
http://www.codeguru.com/forum/showthread.php?t=377393
还有您可能感兴趣的 SendMessage 的 WM_SYSCOMMAND/WM_KEYDOWN/WM_KEYUP/WM_CHAR 事件。
关于c++ - 如何将击键发送到窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36222028/