как убить msiexec.exe в wix? - PullRequest
       17

как убить msiexec.exe в wix?

0 голосов
/ 02 марта 2011

У меня запущено приложение wix. И когда я пытаюсь удалить его, оно должно запросить закрытие приложения. Я хотел бы убить msiexec.exe после того, как оно предложит. Прямо сейчас оно предлагает закрыть, но как толькоя закрываю диалоговое окно, которое показывает, что в скрипте есть какая-то проблема, и позже появляется фатальная ошибка во время установки. Пожалуйста, помогите мне ...

<CustomAction Id="Show" Script="vbscript">

<![CDATA[

set service = GetObject ("winmgmts:")

for each Process in Service.InstancesOf ("Win32_Process")

If Process.Name = "CAS.exe" or Process.Name = "CMSS.exe"

then

msgbox "CAS  is running...Please close it before uninstalling"

 WScript.quit

End If

next

]]>

    </CustomAction>

        <InstallExecuteSequence>
         <Custom Action="Show" After="FindRelatedProducts">REMOVE</Custom>
    </InstallExecuteSequence>

1 Ответ

0 голосов
/ 04 мая 2011

Вы можете создать файл журнала MSI, чтобы определить, какое конкретное настраиваемое действие не удалось выполнить во время установки.

Я бы порекомендовал не использовать

WScript.Quit

Вместо этого используйте

Exit For
*Например, 1008 *.

Если CMSS.exe и CAS.exe не запущены, установите свойство msi, а затем в своем файле wxs укажите условие, которое проверяет значение этого свойства, чтобы определить, будет ли следующеедиалог должен отображаться, например.

...