VS2012 and Wix 3.6 - Installing .Net 4.5 with my a

2019-07-12 08:41发布

I am very new to the installer world.

I have successfully made an .msi for my application and it is building with short-cuts and also uninstalls correctly.

My next goal is to package .Net 4.5 with the installer and have it be installed prior to the installation of my application.

I also have a third party application that needs to be installed. It is packaged as an msi.

From what I can gather I need to develop a Bootstraper solution to have these applications install in sequence.

Can anyone provide a guide as to how to implement an installer in such a way? My searches have come up with a bunch of partial implementations with an assumption of the design of a Wix Bootstrapper Project in Visual Studio.

2条回答
混吃等死
2楼-- · 2019-07-12 08:44

I hope this helps someone. It took me 5 hours to figure it out. Maybe, my bad, but did not find anything about it in the docs or blogs.

So my scenario is: VS 2012, WIX 3.6 with Burn bootsrapper, create a Setup executable in order to check .NET Framework 4.5 and install it by downloading if not installed already. Sounds simple. And it is. Actually very.

  1. Create your MSI installer project (WIX Setup Project), to produce an installer for your application.
  2. Create a WIX Bootstrapper Project for your Setup executable.
  3. Follow the instructions here, to create your Boundle.wxs
  4. Add a reference to the WixNetFxExtension.dll which can be found in the WIX program directory.
  5. Include the following line in your Chain:

<PackageGroupRef Id="NetFx45Redist"/>

Actually the WixNetFx extension contains a working install package definition for the .NET Framework 4.5.

查看更多
戒情不戒烟
3楼-- · 2019-07-12 08:48

As caveman_dick mentioned, Burn in WiX 3.6 supports this but you may also want to take a look at dotNetInstaller (http://dblock.github.com/dotnetinstaller/). We use it to install .NET 4.0 but I'm sure it works for installing 4.5 as well. It can also install other MSI dependencies very easily.

查看更多
登录 后发表回答