我开始使用AutoIT V3编写这样的代码
$file = "G:FullSetup800203.exe"
ShellExecuteWait($file)
Sleep(75000)
WinWaitActive("M1 Setup")
Send("!n")
发送命令不工作
我用的是windows 7 64位机
我可能错了,但在我看来,当你实际上不想使用Wait
时,你好像在使用ShellExecuteWait
。
现在正在发生的事情是你正在运行文件并等待它关闭,一旦进程退出,那么你再睡75秒,然后等待一些窗口激活,然后发送字符。这是你想要的吗?
send命令总是发送密钥。说它"不工作"是不对的,它只是按照你的期望去做。
$file = "G:FullSetup800203.exe"
ShellExecute($file)
Sleep(75000)
WinWaitActive("M1 Setup")
Send("!{n}")
试试。
经过长时间的搜索,为什么脚本在Windows XP上工作,而不是在Windows 7 64位,我发现了原因。在Windows 7中,AutoIt脚本必须以管理员身份运行,才能为某些应用程序发送按键和访问控制。
将Administrator添加到cmd.exe的打开项ControlSend("Administrator: C:Windowssystem32cmd.exe", " ", ", "cd C:Program Files (x86) thefile")@SW_SHOW)