以每一步使用 SendKeys 方法为例:
theCalculator = WshShell.Exec("calc");
// Запустим калькулятор
WScript.Sleep(3000);
// Ждем 3 секунды
WshShell.AppActivate(theCalculator.
ProcessID); // Активируем окно
//запущенного приложения
WshShell.SendKeys("1{+}2~")
// Пошлём 1 + 2 Enter
WshShell.SendKeys("1")
// Пошлём 1
WScript.Sleep(3000);
// Ждем 3 секунды
WshShell.SendKeys("{+}")
// Пошлём +
WScript.Sleep(3000);
// Ждем 3 секунды
WshShell.SendKeys("2")
// Пошлём 2
WScript.Sleep(3000);
// Ждем 3 секунды
WshShell.SendKeys("~")
// Пошлём Enter
第一个 WScript.Sleep(3000); ,显然,是为了等待计算器的启动,然后继续工作。但是,根据处理器负载,在我看来,应用程序启动时间可能会有所不同。但是,例如,在这种情况下,是否有可能在代码中写入一些内容,以便在计算器窗口出现在监视器上之后脚本继续执行?也许与一件紧身衣有关。像 WshShell.Run("lyx " + objArgs(0), 1, true); 但是,这当然不是您所需要的。或者说没有重炮就不行吗,那里,蟒蛇,习?
在显示器上出现计算器窗口后运行的脚本示例。
使用 *.js 扩展名、ANSI 或 Unicode 编码保存文件。测试 Windows-7-64