我已对 msi 文件中的自定义操作进行了更改,以便在服务停止或停止挂起时不尝试停止 Windows 服务。但是,在使用 msiexec /fv mymsi.msi 重新缓存 msi 后,当运行到下一个版本的主要升级(其中也有更正的服务停止自定义操作)时,详细日志记录显示旧的自定义操作代码仍在使用即使缓存的 msi 已更新也运行。我什至对缓存的 msi 与重新缓存中使用的 msi 进行了二进制比较。
我在这里做错了什么。
如果旧的自定义操作仍在运行,则意味着以下两种情况之一:
新的 MSI 逻辑不正确,并且仍在运行自定义操作。
重新缓存/重新安装不起作用。
要重新缓存/重新安装,请确保您的 MSI 与旧 MSI 基本相同(相同的产品代码/升级代码等),但更新的自定义操作除外。然后做:
msiexec /fv new.msi /l*v log.txt
这将覆盖旧的 MSI 并使用新的 MSI 进行修复(并为您提供一个日志文件,以防出现任何问题)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)