如何从命令提示符中查找已执行的MSI的状态

时间:2013-03-22 12:20:51

标签: wix windows-installer wix3.6 msiexec

我使用WiX创建了一个安装程序,它将使用命令提示符执行。我正在寻找的是一种在使用命令提示符执行时检查相同状态的方法,而不检查事件日志或安装程序日志。

找到下面的代码段。

<Property Id="ISSQLSERVERINSTALLED">
  <RegistrySearch Id="IsSqlExpressServiceInstalled" Root="HKLM"
                  Key="SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\ClientSetup\CurrentVersion"
                  Name="CurrentVersion" Type="raw"/>
</Property>
<Condition Message="Microsoft SQL Server 2005 must be installed">
  <![CDATA[ Installed OR ISSQLSERVERINSTALLED ]]>
</Condition>

我正在使用msiexec / i命令安装软件包,安装完成后我检查了%errorlevel%变量,但即使安装失败也返回0。有没有办法在条件中设置错误代码,还是有其他方法来检查安装状态?

提前致谢

1 个答案:

答案 0 :(得分:1)

如果启动条件失败,%errorlevel%将设置为1603.创建安装日志以获取有关确实出错的详细信息。