批处理脚本无法重启程序,如何设置PowerShell左键直接运行?
问题解答
1. 批处理脚本无法重启程序的原因
你在批处理里用了PowerShell专属的Start-Process命令,批处理(CMD)不识别这个命令,执行到该行会直接报错跳过,所以没法启动程序。
批处理要实现重启,得用CMD支持的命令,比如start:
taskkill /IM ADM.TrayApp.exe /F start "" "C:\Program Files (x86)\athenahealth, Inc\aNetDeviceManager\3.1.4.0\TrayApp\CoreModule\ADM.TrayApp.EXE"
注:start命令后加空双引号是因为如果目标路径带空格,第一个参数会被当作窗口标题,必须留空占位。
2. 修改PowerShell脚本左键点击直接运行的方法
不推荐修改系统级的PS脚本关联(会影响所有PS文件),给你两个实用方案:
方案一:创建快捷方式
- 右键你的PS脚本,选择「创建快捷方式」
- 右键快捷方式→「属性」,在「目标」栏修改为:
powershell.exe -ExecutionPolicy Bypass -File "C:\你的脚本完整路径\脚本名.ps1" - 确认后,用户左键双击该快捷方式就能直接运行脚本。
方案二:打包成EXE文件
用PS2EXE工具把PowerShell脚本转换成EXE程序,用户双击EXE就像运行普通软件一样:
- 以管理员身份打开PowerShell,执行
Install-Module PS2EXE(首次运行需允许安装模块) - 执行打包命令:
Invoke-PS2EXE -InputFile "你的脚本路径.ps1" -OutputFile "重启程序.exe"
内容的提问来源于stack exchange,提问作者NAVI
相关产品推荐
相关产品推荐

