Я пытаюсь развернуть и запустить приложение (консольное приложение C #) в начале установки MSI с WIX, но возникают некоторые трудности.
Приложение должно запускаться до того, как произойдет какое-либо действие веб-сервера, но после того, как файлы будут скопированы из MSI в целевое местоположение.
Я могу запустить приложение, но только если я действительно скопировал приложение в каталог до запуска MSI. Если я этого не сделаю, я получаю сообщение об ошибке, касающееся приложения, которого нет в журналах MSI. Таким образом, в основном я думаю, что это связано с последовательностью запуска, которую я использую, и мне нужно убедиться, что приложение существует до его запуска.
Интересно, может ли кто-нибудь из вас, хорошие люди, помочь мне?
Требование заключается в том, что приложение должно запускаться как первое, что делает MSI WIX (задолго до того, как произойдет какая-либо часть веб-сервиса).
Соответствующие биты Wix следующие.
<CustomAction Id='LaunchUpdaterRunFirst' FileKey='serverUpdaterRunFirstExe' ExeCommand='' Return='ignore' />
...
<InstallExecuteSequence>
<Custom Action='CA_BlockOlderVersionInstall' After='FindRelatedProducts'>NEWERVERSIONDETECTED</Custom>
<RemoveExistingProducts After="InstallInitialize" />
<Custom Action='LaunchUpdaterRunFirst' After='InstallInitialize' />
<Custom Action='LaunchInstaller' After='InstallFinalize'><![CDATA[ REMOVE <> "ALL" and UILevel <> 2]]></Custom>
</InstallExecuteSequence>
...
<Component Id="ServerInstaller" DiskId="1" Guid="9662EC72-1774-4d22-9F41-AD98A5DCD729">
<File Id="serverUpdaterRunFirstExe" Name="MyCompany.Server.Updater.RunFirst.exe" Source="$(var.SOURCEPATH)\MyCompany.Server.Updater.RunFirst.exe" />
<File Id="serverUpdaterRunFirstExeConfig" Name="MyCompany.Server.Updater.RunFirst.exe.config" Source="$(var.SOURCEPATH)\MyCompany.Server.Updater.RunFirst.exe.config" />
Любая помощь или ссылки с благодарностью.