Windows启动Powershell脚本在启动过程后未关闭

凡妮莎·菲普斯(Vanessa Phipps)

我已经为我的工作计算机(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"

睡眠是为了确保窗口以正确的顺序出现在任务栏上。我使用以下目标在“快速启动”中的快捷方式上运行此代码:

C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\scripts\initialize.ps1

(是的,这是2.0:powershell -Version 2.0可以正常运行-Version 1.0,但不能-Version 3.0

问题是,命令窗口一直保持打开状态,直到Firefox窗口关闭为止,这不是我想要的。在运行脚本时查看Process Explorer,会发生以下情况:

  1. powershell.exe出现在explorer.exe下,并且出现Powershell窗口(奇怪的是黑色背景。但这不是cmd.exe,因为在调试脚本时,错误消息将显示为红色)。
  2. outlook.exe出现在powershell.exe下,并且出现Outlook窗口。
  3. firefox.exe出现在powershell.exe下,并且出现Firefox窗口。
  4. 第二个firefox.exe出现在powershell.exe下,另一个Firefox窗口出现。然后,第二个Firefox进程将按预期退出,因为Firefox仅使用一个进程。
  5. skype.exe出现在powershell.exe下,并且出现Skype窗口。
  6. Powershell.exe进程就像Powershell窗口一样莫名其妙地停留在进程中。

如果我同时关闭了两个Firefox窗口,则会退出powershell.exe进程,并且关闭Powershell窗口,并且按预期方式在explorer.exe下会出现outlook.exe和skype.exe进程。

我怀疑这与Firefox的标准输入,输出和错误有关:我不希望Outlook或Skype能够向控制台输出任何内容,但是Firefox具有允许其执行此操作的命令行选项。我查看了about:config的用户设置值,没有发现任何可疑的东西。最后,如果我已经运行了firefox.exe实例(从桌面快捷方式启动),则不会出现问题(powershell.exe进程将退出,应有的状态)。

那么这是怎么回事?接下来,我将尝试在快捷方式中添加-WindowStyle隐藏(必须关闭该Firefox进行测试),但是,如果只是为了加深我对Windows控制台工作方式的了解,我想深入了解它。

凡妮莎·菲普斯(Vanessa Phipps)

添加-WindowStyle hidden到目标就像是一种魅力。在任务栏或“进程资源管理器”中找不到分散的Powershell窗口。仍然不确定为什么会首先发生此问题,但至少它能达到预期的效果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PowerShell作业与启动过程

来自分类Dev

任务计划程序PowerShell启动过程未运行

来自分类Dev

执行启动过程后,Powershell“忘记”访问UNC路径

来自分类Dev

启动过程ArgumentList的PowerShell引号

来自分类Dev

Powershell启动过程找不到文件

来自分类Dev

每个循环中的Powershell启动过程

来自分类Dev

Powershell启动过程参数问题

来自分类Dev

Powershell脚本如何使用启动过程在新的Powershell窗口中运行多行代码

来自分类Dev

中断启动过程

来自分类Dev

加快启动过程

来自分类Dev

kibana在启动过程中未开始出现错误

来自分类Dev

PM2进程始终在启动过程后停止

来自分类Dev

Powershell启动过程,等待超时,终止并获取退出代码

来自分类Dev

启动过程在Powershell远程处理中不起作用

来自分类Dev

Web API启动过程

来自分类Dev

启动过程并稍后识别

来自分类Dev

lvmetad阻止启动过程

来自分类Dev

lvmetad阻止启动过程

来自分类Dev

如何检查启动过程?

来自分类Dev

启动过程与启动睡眠效果不佳

来自分类Dev

在启动过程中启动服务

来自分类Dev

C#Windows窗体-循环启动过程

来自分类Dev

Windows 7在启动过程中挂起

来自分类Dev

PowerShell使用启动过程在脚本块中执行功能确实会产生双引号怪异的现象

来自分类Dev

通过PowerShell启动过程启动时,特定的.exe会给出错误消息[powershell]

来自分类Dev

Shell脚本在启动过程中创建意外的文件“启动”

来自分类Dev

在启动/启动过程中运行脚本;init.d和cron @reboot

来自分类Dev

PowerShell-如何使用“启动过程”并重命名新启动的窗口标题

来自分类Dev

笔记本电脑在Linux启动过程中关闭

Related 相关文章

热门标签

归档