新问题:我刚刚开始使用js(JScript),我开始轻松了,我只是遇到了这个问题。我如何让“SendKey”将密钥发送到特定程序,而不仅仅是将密钥发送到选定的窗口?
到目前为止,这是我的代码:
<package>
<job id="js">
<script language="JScript">
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.Run("cmd");
WScript.Sleep(1000);
WshShell.AppActivate("Windows Command Processor");
WshShell.SendKeys ("echo hello");
</script>
</job>
</package>
答案 0 :(得分:0)
在您的特定示例中,您可以使用cmd
's command-line arguments指定要在命令提示符中运行的命令:
var WshShell = WScript.CreateObject("WScript.Shell");
// Use /c to close the Command Prompt window after running the command,
// or /k to keep it
WshShell.Run("cmd /c echo hello");
对于通用GUI自动化,我建议使用AutoIt之类的工具。 Windows Script Host的GUI自动化功能仅限于AppActivate
和SendKeys
,并且非常不可靠。