我有一个旧版本的产品,我们正在用新版本替换。客户希望我们的安装在执行新安装之前以静默方式卸载以前的安装。唯一的问题是卸载完成后会进行不必要的重启。我尝试了多种方法来卸载
msiexec / qn / uninstall appName.msi / norestart
msiexec / qn / x {12AB-GUID-999} REBOOT = ReallySuppress
每当我尝试安静卸载时,它总会重新启动。我捕获了一个日志文件,它包含无意义的行:
递减计数器以禁用关闭。如果counter> = 0,则拒绝关闭。减量后的计数器:-1
如果要禁用关机,为什么在计数器需要> = 0时递减计数器???
不确定我需要做些什么来解决这个问题。任何建议将不胜感激。
有一点似乎很奇怪,在卸载时,我会在我的任务管理器中看到两个msiexec副本,一个名为msiexec.exe,另一个名为msiexec.exe * 32
我在Windows 7/64位上运行
答案 0 :(得分:1)
其中一个msiexec.exe进程将是安装程序服务,另一个是32位进程,它被启动以运行32位自定义操作(因为您无法从一个32位Dll调用64位进程)。
答案 1 :(得分:0)
如果没有MSI的副本或要查看的日志,我会预测自定义操作正在重新启动计算机。这是由额外的msiexec进程(运行自定义操作)以及告诉MSI REBOOT = R MSI不会重启的事实。周期。
记录MSI和/或将其转换为禁用自定义操作将提供证明。