1

I have both VS 2013 Ultimate SP4 and VS 2015 Enterprise on my system. I installed WiX Extension 3.7 (because it's the one supported by Visual Studio Online). WiX templates don't show up in either product. I tried restarting VS, rebooting the computer, removing and re-installing WiX a couple times.

Other postings around the internet that talk about how do this always tell you how to copy the WiX bits from an older VS installation forward to the newer one. I have no older VS installed, and hope I don't have to put in VS-- to install WiX so I can copy forward.

How can I get the WiX 3.7 extension to work correctly with VS 2013 (or 2015 for that matter - either is fine with me)?

sebastus
  • 350
  • 1
  • 7
  • Possible duplicate of [How to Enable WiX Projects in Visual Studio 2015](http://stackoverflow.com/questions/26110643/how-to-enable-wix-projects-in-visual-studio-2015) – gbjbaanb Oct 23 '15 at 20:37
  • I did see that post, and it's not an answer. 1 of its answers says to copy the bits from an older version of VS. The other recommends using WiX 3.10 (which i can't.) – sebastus Oct 23 '15 at 20:46
  • Even though Wix 3.10 isn't installed on the VSO build server, you could simply check the whole Wix targets files and tasks into source control and have them be part of your solution. You don't *have to* install it for it to work. – jessehouwing Oct 23 '15 at 21:13
  • @jessehouwing, thanks for the tip. Example, in 3.10 I used a WebAppPool identity of "ApplicationPoolIdentity". This isn't acceptable in 3.7. I want VSO to do my build and packaging, so I'm installing 3.7 on my wks so that I don't inadvertently use something else that's not legal in that version. Or are you saying this is the best option? – sebastus Oct 23 '15 at 21:24
  • 1
    Your win project file includes the targets file for wix. Just replace the path to one under your control. You may need to set some path variables to tell it where the tools are, but then you can build wix 3.10 on vso just fine. – jessehouwing Oct 23 '15 at 21:26
  • Thanks very much for the totally awesome solution. Better than the way I had in mind. Kudos to you, @jessehouwing!! – sebastus Oct 24 '15 at 19:09

1 Answers1

1

You can edit the wisproj file and make sure it imports the wix targets file from a location under your control (in source control for example), that way you have total control over which version of wix is used during the build, even on VSO.

To make that even easier, you can reference the following NuGet package, it puts the latest version of Wix and the targets file in the packages folder.

Install-Package WiX -Version 3.10.0.2103-pre1 -Pre

Source

jessehouwing
  • 106,458
  • 22
  • 256
  • 341