Installation Studio 7.0 SP1 and .NET 4.0?
Created: 08 Jul 2011 | 9 comments
Hi all,
It's been a while, but I'm back!!!
We continue to use WIS 7.0 SP1 for some small PlugIn installations we use. Since compiling binaries for .NET 4.0, our installations don't function properly anymore with regard to registration I believe. The installations compile and run without error, but our main PlugIn .dlls are not registered.
Is there a way to get WIS 7.0 SP1 to play nicely with .NET Framework 4.0 so proper registration information is streamed into the .msi? If so, how?
I thought I recall some Option setting that you could change to point to the framework version to use (maybe RegAsm as the target?), but I can't seem to find it.
Any help would be greatly appreciated!
THANKS MUCH IN ADVANCE!!
Discussion Filed Under:
Comments
Or, does one simply have to
Or, does one simply have to uninstall, reinstall WIS 7.0 SP 1 on a machine that has .NET 4.0 installed?
I'm pretty sure this has been
I'm pretty sure this has been covered in a previous thread in the forum, but I'll leave it to you to track it down. If I recall correctly, there is no support for .NET 4 even at SP2. Uninstall and reinstall is only relevant if seeking Visual Studio integration, in the event that VS was installed after Wise. Again, there is no support for VS2010 in any current Wise product.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Way back when I upgraded to
Way back when I upgraded to WIS 7, I had a problem after installing then removing .NET 2.0 from my build machine. I thought I was told at the time to uninstall Wise, install the needed .NET Framework, then reinstall Wise. I assumed that during the Wise install, the highest .NET version was detected and used for registry info extration at build time.
When you say there is no support for .NET 4.0, I would take that to mean that Wise can't detect the correct version, in this case 4.0, of the framework to use for extraction at buildtime. Why? If it can, where can this be set?
It would be silly if they hardcoded versioning for the framework. And, I'm not talking about the use of 4.0 as a requirement or anything like that.
I'll dig around in the forums, but it doesn't sound promising.
The built in detection of
The built in detection of .NET versions is implemented in a Wise DLL, which is way out of date now. However, the version reported in the appropriate Windows Installer property is that of the highest version framework on the machine.
I have posted a couple of articles on how to detect one or all of the installed versions of .NET on a target machine, using VBScript and using Wisescript, based on a Microsoft tech note which defines how each version can be explicitly detected. Look here:
Detecting Which .NET Frameworks are Installed Using Wisescript | Symantec Connect Community
and
Detecting which .NET Frameworks are installed using VBScript | Symantec Connect Community
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
I know how to handle
I know how to handle detecting different versions of the framework. My concern was using the correct version of the framework for populating the registry table at build time. If I understand correctly, this is governed by a .dll, which is long outdated so I'm guessing this isn't possible any longer.
Is there a plan?
Is there any official plan for a .NET 4.0 compatible release of WISE package studio?
To my knowledge, there has
To my knowledge, there has never been an "official plan" for any Wise release in the last 15 years or so - you only get to see what has been done when the upgrade is released and the Release Notes are published. All I can say is that there is some small residual development effort buried deep in Symantec and maybe it will bear fruit one day.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
The dll (that EdT mentioned)
The dll (that EdT mentioned) that takes care of scanning the assembly information from .NET dll files is not compatible with .NET 4. .NET 4 has a new runtime version and is not backwards compatible. All .NET versions between 2.0 and 3.5 SP1 have been backwards compatible with 2.0, that's why the .NET version changes have been quite unnoticed so far with regards to this.
I mailed and asked Michael Grueber at Symantec if they are going to implement support for assembly scanning .NET 4 assemblies in Package Studio. He answered that it was very low on the priority list, but could eventually end up being included in a release for the end of 2011. I got the impression that they don't support people that use Package Studio for developing installations. It sounded like they didn't want to sell their product if we were going to use it for developing installations instead of repackaging.
Our solution is to create Merge Modules of .NET 4 dll files with WiX. The Merge Modules can be included in Wise projects and the final installation package compiled with Wise Installation Studio 7 SP2 seems to work fine.
Ah, WiX Merge Modules.
Ah, WiX Merge Modules. That's slick!
It would be awesome to get a recompile of the .NET scanning .dll that will handle 4.0, but since IS 7 is basically dead, I guess there's no shot of that happening.
Would you like to reply?
Login or Register to post your comment.