Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows installer 处理msi安装结果_Windows Installer_Error Code - Fatal编程技术网

Windows installer 处理msi安装结果

Windows installer 处理msi安装结果,windows-installer,error-code,Windows Installer,Error Code,我在分析单个msi文件的安装结果时遇到了一个问题。如果某个程序的较新版本退出,它将返回代码1603(安装失败),这实际上不是一个错误。如何处理 创建详细日志,其中包含更多错误详细信息: msiexec -i setup.msi -l*v logfile.txt 在日志文件中搜索返回值3(本地化),以找到错误的位置。错误的实际原因通常记录在之前几行。但这是与人有关的信息,程序如何处理该文本?我只需要一些东西来检测错误是否严重(然后中止安装)。@Alek现在我更了解你的问题了。您是否创建了MSI文

我在分析单个msi文件的安装结果时遇到了一个问题。如果某个程序的较新版本退出,它将返回代码1603(安装失败),这实际上不是一个错误。如何处理

创建详细日志,其中包含更多错误详细信息:

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之类的东西,您可以自己检查是否已经安装了相同或更新的版本,在这种情况下,根本不需要调用安装程序。要检查的注册表位置有很好的文档记录。