Difference Between Wix Installer and Visual Studio

I am developing a Visual Studio application with WPF, but now this is the moment when I need to choose an installer.

I need my project in order to be able to write in the GAC and in the registry, but I'm not sure if I should use the Visual Studio or Wix installer ... I can not find information on Google that accurately indicates the differences between them.

I found that Wix is ​​more perfect, but I can not find an article that points out the real differences between one or the other ...

Can someone help me find more specific information or choose between them?

EDIT: Sorry, I indicate:

I am using a professional Visual Studio 2010.

+6
source share
3 answers

The final product is the same as the Windows msi installer.

It's just different how you got there. As for the old vdproj, there was nothing but setting up the files to be copied and the registry keys, as far as I remember. Anything else, and you will need to create a custom action in C ++ or VBS, and not especially if you are a .net developer.

However, with the advent of Wix, there are many more built-in user actions that allow you to create a rich installation experience, and if you need to create your own action, you can use .net. In addition, it is much easier to create a boot block that can install dependencies with your msi, as well as the ability to create an interface in WPF.

As @nvoigt said, the old vdproj type is not supported in VS2012, and it also cannot be built by the build server without any unpleasant configuration (you need to install VS).

In general, in fact, there should be no question of what to use, Wix is ​​the way forward.

+8
source

Caveman_Dick wrote:

"Everything else, and you will need to create a custom action."

And in a nutshell - that’s the difference. Visual Studio deployment projects strongly abstract you from the base Windows installer and remove it greatly. This runs counter to the very installer design of Windows, which should be a declarative model of transactional programming.

Take the Windows Service installation as an example? Windows Installer has a ServiceInstall table. VDPROJ cannot expose this, so you stop writing fragile user actions, which leads to less elegant and less reliable installers.

WiX, on the other hand, is a very subtle abstraction. This applies to the XSD XML elements and attributes, which are the underlying data of the Windows Installer table. The build process simply converts XML tables to SQL. If MSI can do this, WiX can (99%) do it.

VDPROJ was a terrible mistake, and Microsoft finally owned it and killed it. WiX now has no interface designers (I wrote one on CodePlex), so you can also consider InstallShield Limited Edition (FREE).

Using a combination of ISLE and WiX, I can get the best of both worlds.

+3
source

If installation projects no longer ship with current versions of Visual Studio, you can use Wix. Otherwise, you will have to record it again as soon as you switch to the current version of Visual Studio.

0
source

All Articles