我一直很难找到任何有用的东西,但我发现有人问如何做到这一点,(如何将击键发送到窗口?)
如果使用代码并且我可以设置记事本的文本,但我想发送键但设置文本,我想发送键,例如我一直在使用它的 keybd_event,但我只想让它发送到一个程序。
keybd_event('a', NULL, NULL, NULL);
keybd_event('a', NULL, KEYEVENTF_KEYUP, NULL);
我怎么能这样做?
我一直很难找到任何有用的东西,但我发现有人问如何做到这一点,(如何将击键发送到窗口?)
如果使用代码并且我可以设置记事本的文本,但我想发送键但设置文本,我想发送键,例如我一直在使用它的 keybd_event,但我只想让它发送到一个程序。
keybd_event('a', NULL, NULL, NULL);
keybd_event('a', NULL, KEYEVENTF_KEYUP, NULL);
我怎么能这样做?
听起来您正在尝试在发送密钥之前使窗口成为焦点。看FindWindow
和SetForegroundWindow
。
像这样的东西应该工作:
SetForegroundWindow(FindWindow(0,"Untitled - Notepad"));
keybd_event(....);
相反,如果您正在谈论直接更改窗口的文本,请查看GetWindow
以导航窗口树并SendMessage
使用WM_SETTEXT
参数。