Powershell:如何检查Internet Explorer的任何实例是否已在运行

时间:2013-05-03 09:50:29

标签: powershell

我想检查是否已经打开了任何Internet Explorer的实例,即它的任何窗口,以便我可以决定是否必须创建新对象,或者我必须附加到该IE窗口的现有进程。这是下面的代码:

$ie = (New-Object -COM "Shell.Application").Windows()| ? { $_.Name -eq "Windows Internet    Explorer" }

我想只在IE窗口打开时才附加到windows(),如果没有打开IE窗口,那么这行应该是这样的:

$ie = (New-Object -COM "Shell.Application")

2 个答案:

答案 0 :(得分:2)

尝试:

if (
     Get-Process iexplore -ea silentlycontinue | 
     Where-Object {$_.MainWindowTitle -ne ""}
)

答案 1 :(得分:0)

if (Get-Process iexplore) { "Yes" } else { "No" }

我不知道这是否适用于具有多个用户的终端服务环境(非升级Get-Process仅在您自己的会话(和系统会话)中查找进程吗?)