Van*_*pps 5 firefox powershell console windows-xp
我有一个适用于我的工作计算机(XP Professional 64 位)的 Powershell V2.0 启动脚本,如下所示:
start "C:\Program Files (x86)\Microsoft Office\Office12\OUTLOOK.EXE" -ArgumentList "/recycle"
sleep -S 2
start "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -ArgumentList "https://mail.google.com"
sleep -S 2
start "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -ArgumentList "-new-window https://www.google.com/calendar"
sleep -S 2
start "C:\Program Files (x86)\Skype\Phone\Skype.exe"
Run Code Online (Sandbox Code Playgroud)
睡眠是为了确保窗口以正确的顺序出现在任务栏上。我从快速启动上的快捷方式使用以下目标运行它:
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\scripts\initialize.ps1
Run Code Online (Sandbox Code Playgroud)
(是的,这是 2.0:powershell -Version 2.0有效,同样如此-Version 1.0,但不是-Version 3.0)
问题是,命令窗口保持打开状态,直到 Firefox 窗口关闭,这不是我想要的。当我运行脚本时查看进程资源管理器,会发生以下情况:
如果我关闭两个 Firefox 窗口,powershell.exe 进程会退出,Powershell 窗口会关闭,并且 Outlook.exe 和 skype.exe 进程会按预期出现在 explorer.exe 下。
我怀疑这与 Firefox 的标准输入、输出和错误有关:我不希望 Outlook 或 Skype 向控制台输出任何内容,但 Firefox 具有允许它这样做的命令行选项。我查看了我的 about:config 用户设置值,并没有发现任何可疑之处。最后,如果我有一个 firefox.exe 实例已经在运行(从桌面快捷方式启动),问题就不会发生(powershell.exe 进程应该退出)。
那么这里发生了什么?接下来我将尝试将 -WindowStyle hidden 添加到快捷方式(必须关闭此 Firefox 以对其进行测试),但我想深入了解这一点,如果只是为了提高我对 Windows 控制台如何工作的理解。
添加-WindowStyle hidden到目标就像一个魅力;无论是在任务栏上还是在 Process Explorer 中都找不到杂散的 Powershell 窗口。仍然不确定为什么这个问题首先发生,但至少它做了它应该做的事情。
| 归档时间: |
|
| 查看次数: |
4207 次 |
| 最近记录: |