Windows installer 处理msi安装结果
我在分析单个msi文件的安装结果时遇到了一个问题。如果某个程序的较新版本退出,它将返回代码1603(安装失败),这实际上不是一个错误。如何处理 创建详细日志,其中包含更多错误详细信息:Windows installer 处理msi安装结果,windows-installer,error-code,Windows Installer,Error Code,我在分析单个msi文件的安装结果时遇到了一个问题。如果某个程序的较新版本退出,它将返回代码1603(安装失败),这实际上不是一个错误。如何处理 创建详细日志,其中包含更多错误详细信息: msiexec -i setup.msi -l*v logfile.txt 在日志文件中搜索返回值3(本地化),以找到错误的位置。错误的实际原因通常记录在之前几行。但这是与人有关的信息,程序如何处理该文本?我只需要一些东西来检测错误是否严重(然后中止安装)。@Alek现在我更了解你的问题了。您是否创建了MSI文
msiexec -i setup.msi -l*v logfile.txt
在日志文件中搜索
返回值3
(本地化),以找到错误的位置。错误的实际原因通常记录在之前几行。但这是与人有关的信息,程序如何处理该文本?我只需要一些东西来检测错误是否严重(然后中止安装)。@Alek现在我更了解你的问题了。您是否创建了MSI文件,还是来自其他制造商?如果它是您自己的,您可以编写一个自定义操作,在安装新版本的情况下返回ERROR\u NO\u MORE\u ITEMS
。这将跳过安装过程,但安装过程仍将返回0(成功)。它是另一家制造商,事实上它可以是任何东西-如VS Redistributional Package或.Net Installer。我恐怕您无法按常规方式处理此问题。对于VC Redist和.NET installer之类的东西,您可以自己检查是否已经安装了相同或更新的版本,在这种情况下,根本不需要调用安装程序。要检查的注册表位置有很好的文档记录。