我有一个在后台运行的powershell脚本,部分脚本将使用隐藏的IE。有时这个脚本会被挂起,我想查看IE和PowerShell窗口以查看其卡住的位置。我找不到办法做到这一点。
有时windows会给我一条消息,如果一个脚本正在运行prcess正在运行并询问我是否想要查看它然后我能够查看窗口但是我无法弄清楚这样做而不会得到那个消息首先。
任何人都知道如何做到这一点,因为我真的需要弄清楚这个脚本被困在哪里。如果我手动运行它可以正常工作并且大部分时间都能正常工作,但每次都经常会卡在同一个地方。
它是一台运行的Windows 10机器,如果有帮助的话。
谢谢!
答案 0 :(得分:0)
打开PowerShell窗口并输入以下命令以连接到正在运行的Internet Explorer:
$windows = (New-Object -Com "Shell.Application").Windows()
$ie = $windows | Where-Object {$_.Name -eq "Internet Explorer"}
$ie.Visible = $true
这应该将您连接到正在运行的IE实例并再次使窗口可见。如果这不起作用,我会查看$windows
变量中的对象,看它是否甚至检测到你的IE。如果它没有检测到它,您可能需要确保它以管理员权限运行。
在发现powershell脚本在远程会话中启动IE对象之后,我会实现一个计划任务并远程触发该任务,以便它将在会话1而不是会话0中运行。 有关此问题的更多信息以及其他各种应用: http://psappdeploytoolkit.com/forums/topic/session-0-ui/
https://github.com/PowerShell/Win32-OpenSSH/issues/998
https://serverfault.com/questions/690852/use-powershell-to-start-a-gui-program-on-a-remote-machine