WIX Installing an EXE after Msi install finishes.
- by Chris
Hi,
I have created an MSI package which when finishes runs an exe.
<Package InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="Installer Example">
<Component Id="VSTOR30.EXE" Guid="4fb0aee7-ec5b-4179-8938-a2be4df8ca0e">
<File Id="VSTOR30.EXE" Source="C:\Projects\InstallationTarget\ExampleInstaller\VSTOR30.EXE" KeyPath="yes" Checksum="yes" />
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id="ProductFeature" Title="Installation Target" Level="1">
<ComponentRef Id="VSTOR30.EXE" />
</Feature>
<InstallExecuteSequence>
<Custom Action="RunEXE" After="InstallFinalize">NOT Installed</Custom>
</InstallExecuteSequence>
<CustomAction Id="RunEXE" FileKey="VSTOR30.EXE"
ExeCommand="[#VSTOR30.EXE]"
Execute="immediate"
Return="asyncNoWait">
</CustomAction>
<UI />
The MSI installs but the EXE is not run. I am calling it after Install Finalize and checking the install sequence in ORCA shows that it is being called at the correct time. I need deploy this through group policy software installation which uses a silent install without inputs. If i use a custom UI and run the EXE in the exit dialog
<UI>
<UIRef Id="WixUI_Minimal" />
<Publish Dialog="ExitDialog"
Control="Finish"
Event="DoAction"
Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish>
</UI>
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="RunEXE" />
<!-- Step 3: Include the custom action -->
<Property Id="WixShellExecTarget" Value="[#VSTOR30.exe]" />
<CustomAction Id="RunEXE"
BinaryKey="WixCA"
DllEntry="WixShellExec"
Impersonate="yes" />
Then i can install the software after the msi has finished running, however when putting this group policy the EXE doesn't install.
Is there anything i am missing?
Chris