【发布时间】:2013-03-22 12:20:51
【问题描述】:
我使用 WiX 创建了一个安装程序,它将使用命令提示符执行。我正在寻找的是一种在使用命令提示符执行时检查相同状态而不检查事件日志或安装程序日志的方法。
在下面找到代码sn-p。
<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。有没有办法在条件中设置错误代码,或者有没有其他方法可以检查安装状态?
提前致谢
【问题讨论】:
-
正如 Ciprian 所说,您可以使用
msiexec /i "C:\...\setup.msi" /l*xv log.txt启用日志记录。然后使用net helpmsg 0000了解每条错误消息的含义。例如 1603 是安装过程中的致命错误。 -
感谢您的回复,但我不想使用日志。我想要的是,运行 msiexec /i msiname.msi 后检查错误级别
标签: wix wix3.6 windows-installer