0

In VS 2012, is it possible at all to have 1 solution with:

  • 1 setup project using the InstallSHield Limited Edition
  • 1 WPF project for the framework 4.5
  • 1 WPF project for the framework 4.0
  • 1 WPF project for the framework 3.5

And have the InstallShield Setup Project check before installation what framework the computer is running and then installing the project that corresponds top that framework when the user clicks on the setup.exe file?

touyets
  • 1,315
  • 6
  • 19
  • 34
  • Are there material differences between these WPF EXE's? Couldn't you just compile for .NET 3.5 and manifest it to allow running on .NET 3.5 or newer? – Christopher Painter Oct 08 '13 at 20:09

1 Answers1

0

The limited edition of InstallShield targets building single Windows Installer projects. You could almost make a single MSI that has all those contents, and chooses which to install, but I don't think the limited edition exposes enough of the controls that you would need to use - you can condition files by OS, but I don't believe you can condition them by .NET framework version. Additionally this doesn't sound like the architecture you're hoping for.

If you have budget to consider the premier edition of InstallShield, the Suite project is designed to handle the installation of several packages, and they can be conditioned however you like. If you only have the budget for the professional or express edition, the professional edition can definitely offer the single MSI approach, and the express edition may as well.

(But don't take my word on the edition differences too far; I spend all my time in the premier edition, so I forget what the lower editions' exact capability sets are.)

Michael Urman
  • 15,737
  • 2
  • 28
  • 44
  • Thanks for that. Sucks a little that I can 't use the LE for this but I guess they have to make their money somehow. I'll keep the question open another day and if nothing better, i'll give you teh cred. – touyets Oct 08 '13 at 13:19
  • I know ways to do it. But the question is, why? For Michael, ISLE supports one feature and doesn't expose component conditions. Also launch conditions don't allow you to say "3.5 or 4.0" only 3.5, 4.0 or 3.5 and 4.0. However through WiX merge modules it's possible to get around this via component injection and Type 19 CA authoring. Another strategy would be a .NET 2.0 Helper.exe with higher CLR support that detects the framework and launches the correct EXE. Again... why? – Christopher Painter Oct 08 '13 at 20:09