cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
selwynreynolds
Level 7

.net assemblies (same name different versions) to GAC

Hi,
I am writing my first InstallScript MSI project (all others were InstallScript). I have some 3rd party .NET dll's that need to go in the GAC because the project installs applications that use different versions of the same dll's. I have 3 dll's, 2 versions of each (ex dll1 ver 1.2, dll2 ver 1.2, dll3 ver 1.2, dll1 ver 3.5, dll2 ver 3.5, dll3 ver3.5). I put each one in it's own component and made it the key file. The properties I modifed are as follows: .NET Scan at Build: Properties Only, .NET Precompile Assembly: No, Destination: [Global Assembly Cache]. I kept the default on the other properties but can tell you how those are set if needed.

This project will install and run successfully on one machine (Windows XP SP2). On 3 other machines (all Windows XP SP2 also) the following is installed in the GAC:
dll1 ver 1.2
dll2 ver 1.2
dll3 ver 3.5

So, the installed applications do not run on those machines.

I'll admit I do not really understand how InstallShield installs to the GAC, nor do I really understand the CA's. The only reason I switched to use InstallShield MSI is to have access to the SQL Express Prerequisite.

Am I missing something obvious? I've looked at other threads about the GAC and NGEN but haven't found one that addresses my problem of the same dll but different version.

Thank you.
Labels (1)
0 Kudos
(1) Reply
selwynreynolds
Level 7

I fixed the problem. In the help I read the MsiAssemblyTable topic and added my 6 dll's to that table and left my properties the same as in my first post. I did change the source location property for one version of the dll's so InstallShield would put them in a different folder in the release. I'm not sure if that is what helped or if it was the MsiAssemblyTable entries (I can change the source location back to what I had before and try it to see I guess).

Thanks anyway.
0 Kudos