2013-03-22 4 views
2

Я создал установщик с помощью WiX, и он будет выполнен с использованием командной строки. То, что я ищу, - это способ проверить статус того же, когда он выполняется с помощью командной строки, не проверяя журнал событий или журнал установки.как найти статус выполненной MSI из командной строки

Найти фрагмент кода ниже.

<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/я приказываю, чтобы установить пакет и после установки я проверил переменную% ERRORLEVEL%, но она возвращает 0, даже сбой установки. Есть ли способ установить код ошибки в состоянии или есть ли другой способ проверить состояние установки?

Заранее спасибо

+1

Как сказал Ciprian, вы можете включить ведение журнала с помощью 'msiexec/i 'C: \ ... \ setup.msi"/l * xv log.txt'. Затем используйте 'net helpmsg 0000', чтобы узнать, что означает каждое сообщение об ошибке. Например, 1603 является фатальной ошибкой во время установки. – Netfangled

+0

Спасибо за ответ, но я не хочу использовать журнал. Я хочу, чтобы проверить уровень ошибок после запуска msiexec/i msiname.msi –

ответ

1

В случае неудачного запуска условия% ERRORLEVEL% установлен в 1603 Создать журнал установки для получения подробной информации о том, что действительно идет не так.

+0

, когда я запустил msi через командную строку, msiexec/i msiname.msi Появляется сообщение «Microsoft SQL Server 2005 должен быть установлен», который указан в приведенном выше коде , Но затем я запускаю echo% errorlevel% в том же окне командной строки, он дает «0», который я ожидаю, код ошибки, такой как 1603 –

+0

Создать журнал установки – Ciprian

Смежные вопросы