WIXを使用したMSIインストールの開始時にアプリケーション(C#コンソールアプリ)を展開して実行しようとしていますが、問題があります。
アプリケーションは、Webサーバーのアクションが発生する前に、ファイルがMSIからターゲットの場所にコピーされた後に実行する必要があります。
アプリを実行することはできますが、MSIを実行する前にディレクトリにアプリケーションを実際にコピーした場合に限ります。そうしないと、MSIログに存在しないアプリに関連するエラーが発生します。つまり、基本的には、使用している起動シーケンスに関係していると思います。実行する前に、アプリが存在することを確認する必要があります。
あなたの良い人の一人が私を助けることができるかどうか疑問に思います。
要件は、アプリケーションがWIX MSIが最初に実行するように実行する必要があることです(実際には、Webサービスの一部が発生する前に)。
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" />
ヘルプや参考資料をいただければ幸いです。