[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. $word=New-Object -ComObject Word.Application
  2. $word.Tasks['test'].Close()
  3. $word.Quit()
复制代码
这样应该是最准确的,不会直接结束主进程

TOP

本帖最后由 Nsqs 于 2023-10-19 07:35 编辑

回复 2# wanghan519


在我的测试发现中似乎gps命令的mainwindowtitle属性仅返回被激活过的该进程,举例
如果该进程有10个,其中有9个是闲置,未被用户激活过,那么只返回最后那一个被激活的窗口标题,其余9个都返回空
比如
(Get-Process).MainWindowTitle|?{$_ -match 'test'}
还有如果想获取PowerShell的标题,以window11为例,可能还同时存在,设置不同的系统,比如有的人用的是WindowsTermina
那么用gps pwsh显然就获取不到标题了
(gps pwsh).MainWindowTitle
还得进行更多细节上的判断比如换成WindowsTerminal
(gps WindowsTerminal).MainWindowTitle
才能获取,只能说这个方法并不不实用

另外Get-Process有个方法叫CloseMainWindow() 也可以不用调用stop-process

算是看懂楼主需求了,只排除进程某个窗口,关闭该进程其他窗口(不包含被排除窗口)...

TOP

返回列表