I saw a thread about GACing that said:
"If a file is marked for the GAC, it goes there only. MSI doesn't
install
the file, then run gacutil or equivalent -- it uses Fusion interfaces
directly to install to the GAC."
Is this true?
I'm still not able to get the installer to work right. The files are
there but it won't recognize them unless I manually GAC them.
What could I be doing wrong?
Thanks,
Mike
________________________________
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Wilson,
Phil
Sent: Wednesday, July 18, 2007 12:34 PM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Problem adding assembly to GAC
Make sure that the internal name of the assembly matches the file name.
If you renamed the assembly externally but its internal identity is the
original name it won't install. As a check, if you try to install it to
the GAC with a Visual Studio setup project the symptom of this is a
build error "ERROR: Assembly 'renamedassembly.dll' must have a shared
name to be installed globally". I don't know if Wix makes this check at
build time.
ProcessorArchitecture, PublicKeyToken etc aren't used at install time if
Wix does what I think it does. These values populate the MsiAssemblyName
table and must reflect the real assembly because they're used at
uninstall time to tell fusion to uininstall an assembly with this list
of attributes. It doesn't need those attributes at install time because
it has the actual assembly and can just get them.
Phil Wilson
________________________________
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Mike
Menaker
Sent: Wednesday, July 18, 2007 10:43 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Problem adding assembly to GAC
I have encountered a problem adding some assemblies to the GAC.
The assembly I'm trying to add is wrapper to a COM object.
When I just use TLBIMP it works fine.
However I added versioning by:
Using ildasm.exe to disassemble
Then appending a resource file and using ilasm.exe to re assemble.
However now when I use the installer the assemblies aren't found unless
they are manually added to the GAC using GACUtil.
One change I have noticed is that in the assembly it now notes the
processor architecture as msil. However even when adding this
"ProcessorArchitecture="msil"" into the component it isn't gac'ed
properly.
Here is my component:
<Directory Id="GAC_ComponentsDir" Name="GAC"
LongName="GlobalAssemblyCache"
FileSource='$(var.SOURCEPATH_COMPONENTS)'>
<Component Id="GAC_ ASSEMBLY "
Guid="2CD36A99-7041-4fc2-A25F-50F02B36E042">
<File Id="ASSEMBLY_DLL" Name="ASSEMB_2.DLL" Vital="yes" LongName="
ASSEMBLY.dll"
KeyPath="yes" Assembly=".net" DiskId="1" />
</Component>
Any body have any I idea what I could be doing wrong?
Thanks,
Mike
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users