Installation 在WIX安装开始时部署并运行应用程序

Installation 在WIX安装开始时部署并运行应用程序,installation,wix,launch,Installation,Wix,Launch,我试图在MSI安装WIX的开始阶段部署并运行一个应用程序(C#console应用程序),但遇到了一些困难 应用程序需要在任何Web服务器操作发生之前,但在文件从MSI复制到目标位置之后运行 我可以让应用程序运行,但前提是我在运行MSI之前已将应用程序复制到目录中。如果我不这样做,我会得到一个与MSI日志中不存在的应用程序相关的错误。因此,基本上我认为这与我使用的启动顺序有关,我需要确保应用程序在运行之前存在 想知道你们当中有没有人能帮我 要求是应用程序必须像WIX MSI做的第一件事一样运行(实

我试图在MSI安装WIX的开始阶段部署并运行一个应用程序(C#console应用程序),但遇到了一些困难

应用程序需要在任何Web服务器操作发生之前,但在文件从MSI复制到目标位置之后运行

我可以让应用程序运行,但前提是我在运行MSI之前已将应用程序复制到目录中。如果我不这样做,我会得到一个与MSI日志中不存在的应用程序相关的错误。因此,基本上我认为这与我使用的启动顺序有关,我需要确保应用程序在运行之前存在

想知道你们当中有没有人能帮我

要求是应用程序必须像WIX MSI做的第一件事一样运行(实际上在任何Web服务部分出现之前)

Wix的相关位如下所示

    <CustomAction Id='LaunchUpdaterRunFirst' FileKey='serverUpdaterRunFirstExe' ExeCommand='' Return='ignore' />


检测到新服务器
“全部”和UILevel 2]]>



非常感谢您的帮助或参考。

不要将可执行文件添加到要安装的文件列表中,而是尝试将其作为二进制文件输入

<Product ......>

  <Binary Id="serverUpdaterRunFirstExe" SourceFile="$(var.SOURCEPATH)\MyCompany.Server.Updater.RunFirst.exe" />

  <CustomAction Id="LaunchUpdaterRunFirst" BinaryKey="serverUpdaterRunFirstExe" />

</Product>

请参阅。您当前使用的

<Custom Action='LaunchUpdaterRunFirst' After='InstallInitialize' />

但在那一刻,文件还没有被复制。因此,我认为您必须使用以下选项之一:

<Custom Action='LaunchUpdaterRunFirst' After='InstallFiles' />
<Custom Action='LaunchUpdaterRunFirst' Before='ConfigureIIs' />

这可能不起作用,因为MyCompany.Server.Updater.RunFirst.exe.config文件丢失。
<Custom Action='LaunchUpdaterRunFirst' After='InstallInitialize' />
<Custom Action='LaunchUpdaterRunFirst' After='InstallFiles' />
<Custom Action='LaunchUpdaterRunFirst' Before='ConfigureIIs' />