运行时停止vbscript停用当前窗口?

时间:2013-07-18 19:38:44

标签: windows-8 vbscript

我正在尝试编写一个简单的脚本来填写需要使用键盘快捷方式登录的程序的登录详细信息。

set wshshell = wscript.CreateObject("wscript.shell")
WshShell.SendKeys "username{tab}passowrd{enter}"

这可以在我的工作计算机(xp)上运行,但在我的家用计算机(Windows 8)上,键盘快捷键会取消激活当前窗口,以便不输入详细信息。 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可能需要查看shell的AppActivate方法。你可以这样写:

boolSuccess = False
do until boolSuccess = True
    boolSuccess = WshShell.AppActivate("AppName")
    WshShell.sleep 500
loop    
WshShell.SendKeys "username{tab}password{enter}"

这会将焦点移至目标应用,然后发送密钥。悲惨的部分是您可能需要在AppActivate和SendKeys之间“睡眠”,以确保您的目标应用有时间获得焦点。