确认桌面环境外的弹出框?

时间:2015-08-28 22:15:53

标签: batch-file vbscript cmd

我有一个生成弹出窗口的脚本,要求用户点击[Ok]。我有另一个脚本可以使用SendKeys自动执行此操作,但是当用户注销时需要运行脚本时,如何才能完成此操作?该脚本似乎依赖于桌面环境处于活动状态。

1 个答案:

答案 0 :(得分:0)

查看nircmd之类的工具,该工具可以直接向该按钮发送BM_CLICK消息,而不是依赖于UI /按键。

假设您的消息框使用标准OK按钮,并且您在脚本(或系统路径)所在的文件夹中有nircmd.exe,则应单击以下语句:

With CreateObject("WScript.Shell")
    .Run "nircmd.exe dlg """" ""The Popup Title"" click ok"
End With

如果消息框的标题不是唯一的,也可以传递进程名称:

With CreateObject("WScript.Shell")
    .Run "nircmd.exe dlg ""someprocess.exe"" ""The Popup Title"" click ok"
End With