我是 Python 的新手,正在尝试将组合键发送到我在 Windows 7 下打开的应用程序。虽然我的脚本在我出于测试目的调用 Notepad.exe 时可以完美运行,但它不适用于实际应用程序我正在尝试使用。
到目前为止,这是我的代码:
import win32com.client
import time
import SendKeys
import os
from ctypes import *
shell = win32com.client.Dispatch("WScript.Shell")
os.startfile("C:\...exe")
time.sleep( 5 )
shell.SendKeys('%{F4}') # 'Alt+F4' to close the application again.
出于某种原因,应用程序不会响应脚本而关闭。当我按下键盘上的“Alt + F4”时,它会按预期关闭。关于这里可能发生的事情有什么想法吗?
欢迎任何帮助!请记住,我是 Python 的新手 ;-)
PS:我已经通过包含以下代码片段验证了应用程序在事件窗口中运行:
import win32ui
wnd = win32ui.GetForegroundWindow()
print wnd.GetWindowText()
最佳答案
好的...我重新启动了系统,出于某种原因它现在可以正常工作了。我想知道以前程序调用的某些进程实例是否可能一直在系统上徘徊。无论如何,我现在能够按预期执行操作,即使我一开始并不真正理解哪里出了问题。
感谢所有花时间回复的人。
关于python - 如何使用 SendKeys 将模拟键盘敲击发送到事件窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4636887/