在Windows Server 2012上运行PowerShell脚本时,第三方应用程序的AutoIt exe未完全运行

时间:2015-04-21 09:19:23

标签: windows powershell ui-automation autoit

我正在使用autoit脚本语言进行自动化。我已经创建了一个autoit脚本的可执行文件,以便我可以在任何地方运行它。我已将可执行文件上载到其他服务器。然后我写了一个windows powershell脚本,从该服务器下载autoit exe并在Windows Server 2012上运行它。当我在Windows Server 2012上手动运行powershell脚本时,它运行没有问题并完成自动脚本。但是当我在一个自动执行它的应用程序中放置一个powershell脚本时,autoit exe会成功下载,但它不会完全运行。它被困在第三方应用程序的最后2个窗口。 以下是我在每个窗口上用于自动化的脚本示例:

_FileWriteLog($hFile, "Reboot Window")  
$hWnd = WinWait("Install","This system must be ")                         
_FileWriteLog($hFile, $hWnd)  
ControlClick($hWnd, "", "[CLASS:Button; INSTANCE:3]")              

任何帮助将不胜感激.. !!感谢..

1 个答案:

答案 0 :(得分:0)

操作外部应用程序窗口时,请始终使用 #RequireAdmin 以获取权限提升。还可以使用选项(" WinSearchChildren",1)来搜索子窗口。使用" WinTitleMatchMode"

#RequireAdmin ;Will give your script a permission elevation (sometimes its needed)
Opt("WinTitleMatchMode", 2) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase
Opt("WinSearchChildren", 1) ;0=no, 1=search children also