Porting Custom Install Actions to Wix

2019-03-16 01:35发布

问题:

I currently have a Visual Studio Deployment project for creating an MSI for my applicaiton, and I'm porting over to a WiX installer. The VS Installer used a library with Custom Install Actions that inherited from System.Configuration.Install.Installer, e.g.:

[RunInstaller(true)]
public partial class MyCustomInstaller: Installer
{
}

How do these equate to Wix actions? I figure that in general, WiX allows you to run custom actions after an install. Are these just executables? In my case, the custom Install Actions I have are classes in a DLL, not an EXE. How can I execute these from my WiX configuration?

回答1:

The Installer class based custom actions do not integrate well with the Windows Installer. The Visual Studio Setup Projects created a workaround to shoehorn them into an .MSI file but that was never the ideal situation. The WiX toolset provides true support for managed custom actions using the DTF framework.

I highly encourage you to take a look at the DTF Documentation shortcut provided with the WiX toolset. It has decent walkthroughs and I expect you'll be able to port your code pretty easily plus you'll be able to integrate far more with the Windows Installer.