我正在从几千台客户端计算机上卸载 Cisco Agent Desktop 维护更新,但无法阻止它重新启动。MSI 文件正在调用srRollbackRepair.exe
在空白 CMD 窗口中运行的文件,大约 10 秒后它会重新启动计算机。
不需要srRollbackRepair
,因为它正在尝试修复原始安装,原始安装也将被删除(或可能已被删除),因此没有必要进行回滚修复。如果我删除原始应用程序(没有维护更新),它会保留更新。
有没有办法让我设置某种标志/开关,
- 阻止
.exe
被 MSI 调用或 - 防止
srRollbackRepair.exe
产生重新启动或 - 由于不需要回滚,因此在完成并重新启动之前会自动关闭 cmd 窗口?
也许有一种方法可以在几毫秒后自动关闭 cmd 窗口?我知道.exe
正在启动重启,因为我可以独立于 MSI 运行它,然后它会重新启动。
另外,我知道 MSI 不需要该.exe
文件来完成卸载,因为如果我在启动后退出其 cmd 窗口,它将永远不会重新启动 - 并且在程序和功能下,维护包已经消失了。
我已经在.exe
和 MSI 上尝试了以下操作:
/? (generates nothing for exe)
REBOOT=REALLYSUPRESS
/noreboot
/norestart
/delayrestart
答案1
记录卸载ISS应答文件:
setup.exe /uninst /r /f1"<ISS_Files_Directory>\uninstall.iss"
静默卸载使用 ISS 应答文件:
setup.exe /uninst /s /f1"<ISS_Files_Directory>\uninstall.iss"
可能会有帮助……
方法 2,特权常量:
禁用特权 SE_SHUTDOWN_NAME。
卸载 MSI。
启用权限 SE_SHUTDOWN_NAME。
答案2
只需先重命名或删除 srRollbackRepair.exe 即可。我的文件如下所示:
del /f /q "{path-to-the-file}\srRollbackRepair.exe"
#uninstall service release
msiexec.exe /qn /x{4682F8A7-0BA1-4165-A003-EC50BB43A8AF} /norestart
#uninstall CAD
MsiExec.exe /qn /x{007C5E6D-3037-4C00-A5FD-561F239169C4} /norestart
验证安装代码是否适合您的版本,否则您应该没问题。我使用它来删除 CAD,然后安装较新的版本。