维护启动过程的单个实例

时间:2014-11-29 12:07:03

标签: internet-explorer powershell start-process

我在Windows 8上使用PowerShell。我正在使用这行代码......

start-process -filepath "C:\Program Files\Internet Explorer\iexplore.exe" -argumentlist "-k http://localhost/"

...启动IE。然而,这有效,当多次触发事件时,会打开多个信息亭IE实例。如何维护kiosk IE的单个实例,然后以编程方式关闭它?

谢谢! :)

1 个答案:

答案 0 :(得分:1)

这会有用吗?

$ie = Get-Process -Name iexplore -ErrorAction SilentlyContinue

if ($ie -eq $null)
{
    start-process -filepath "C:\Program Files\Internet Explorer\iexplore.exe" -argumentlist "-k http://localhost/"
}

要停止正在运行的实例,您可以执行以下操作:

$ie = Get-Process -Name iexplore -ErrorAction SilentlyContinue

if ($ie -ne $null)
{
    $ie | Stop-Process
}

编辑: 您也可以将两者结合起来以确保IE在您启动流程之前未运行,如果是,则会停止:

Get-Process -ErrorAction SilentlyContinue -Name iexplore | Stop-Process -ErrorAction SilentlyContinue
start-process -filepath "C:\Program Files\Internet Explorer\iexplore.exe" -argumentlist "-k http://localhost/"