Merge Module and GAC
Posted 30 May 2007 - 21:29
-- spdygnlz --
Posted 31 May 2007 - 17:20
Stefan Krüger
InstallSite.org twitter facebook
Posted 31 May 2007 - 19:06
Thanks
-- spdygnlz --
Posted 01 June 2007 - 14:40
Stefan Krüger
InstallSite.org twitter facebook
Posted 13 June 2007 - 17:58
I've actually abandoned the MergeModule and just tried to put these files directly in my project. So I have 2 copies of a set of 7 files (Microsoft.Practices.EnterpriseLibrary.*.dll) in my project. The first set is getting installed to a subdirectory of [INSTALLDIR] and that seems to be getting installed correctly. The second set is set to install to the GlobalAssemblyCache. The component's source location for each one is GlobalAssemblyCache. When the media is built, I can verify that the files are built to Disk1\GlobalAssemblyCache directory. When the installation is run, the files don't make it to the GAC and instead end up in the root of my C:\ drive.
I searched through my verbose log file and pulled out all references to 1 of these 7 files.
CODE |
(SERVER)  MSI (s) (70:AC) [17:14:35:922]: Executing op: ComponentRegister(ComponentId={08CF15D2-9D6A-41BB-A4FB-BEE6FE68DA8A},KeyPath=C:\Program Files\Bently Nevada\System 1\Licensing\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll,State=3,,Disk=1,SharedDllRefCount=1,BinaryType=0) (UNKNOWN)  1: {466E8E40-5191-4A8C-8FD4-B68F83EF60D1} 2: {08CF15D2-9D6A-41BB-A4FB-BEE6FE68DA8A} 3: C:\Program Files\Bently Nevada\System 1\Licensing\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll (SERVER)  MSI (s) (70:AC) [17:14:35:922]: Executing op: ComponentRegister(ComponentId={B78CEA51-4104-49B4-A59F-E157B9E8F04B},KeyPath=C:\Microsoft.Practices.EnterpriseLibrary.Common.dll,State=3,,Disk=1,SharedDllRefCount=1,BinaryType=0) (UNKNOWN)  1: {466E8E40-5191-4A8C-8FD4-B68F83EF60D1} 2: {B78CEA51-4104-49B4-A59F-E157B9E8F04B} 3: C:\Microsoft.Practices.EnterpriseLibrary.Common.dll |
And a bit further down...
CODE |
(SERVER)  MSI (s) (70:AC) [17:35:02:360]: Executing op: FileCopy(SourceName=MICROS~1.DLL|Microsoft.Practices.EnterpriseLibrary.Common.dll,SourceCabKey=microsoft.practices.7,DestName=Microsoft.Practices.EnterpriseLibrary.Common.dll,Attributes=8192,FileSize=57344,PerTick=32768,,VerifyMedia=1,,,,,CheckCRC=0,Version=1.1.0.0,Language=0,InstallMode=58982400,,,,,,,) (SERVER)  MSI (s) (70:AC) [17:35:02:360]: File: C:\Program Files\Bently Nevada\System 1\Licensing\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll; To be installed; Won't patch; No existing file (SERVER)  MSI (s) (70:AC) [17:35:02:360]: Source for file 'Microsoft.Practices.EnterpriseLibrary.Common.dll' is uncompressed, at '\\nvrnodv30psge\C$\6.5 Installs\12Jun07Daily\DISK1\program files\Bently Nevada\System 1\Licensing\Bin\MSPE\'. (UNKNOWN)  InstallFiles: C:\Program Files\Bently Nevada\System 1\Licensing\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll SIZE: 57344 bytes (SERVER)  MSI (s) (70:AC) [17:35:02:360]: Note: 1: 2318 2: C:\Program Files\Bently Nevada\System 1\Licensing\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll (SERVER)  MSI (s) (70:AC) [17:35:02:469]: Executing op: SetTargetFolder(Folder=C:\) (SERVER)  MSI (s) (70:AC) [17:35:02:469]: Executing op: SetSourceFolder(Folder=1\Global~1\|GlobalAssemblyCache\) (SERVER)  MSI (s) (70:AC) [17:35:02:469]: Executing op: FileCopy(SourceName=MICROS~1.DLL|Microsoft.Practices.EnterpriseLibrary.Common.dll,SourceCabKey=microsoft.practices.,DestName=Microsoft.Practices.EnterpriseLibrary.Common.dll,Attributes=8192,FileSize=57344,PerTick=32768,,VerifyMedia=1,,,,,CheckCRC=0,Version=1.1.0.0,Language=0,InstallMode=58982400,,,,,,,) (SERVER)  MSI (s) (70:AC) [17:35:02:469]: File: C:\Microsoft.Practices.EnterpriseLibrary.Common.dll; To be installed; Won't patch; No existing file (SERVER)  MSI (s) (70:AC) [17:35:02:469]: Source for file 'Microsoft.Practices.EnterpriseLibrary.Common.dll' is uncompressed, at '\\nvrnodv30psge\C$\6.5 Installs\12Jun07Daily\DISK1\GlobalAssemblyCache\'. (UNKNOWN)  InstallFiles: C:\Microsoft.Practices.EnterpriseLibrary.Common.dll SIZE: 57344 bytes (SERVER)  MSI (s) (70:AC) [17:35:02:469]: Note: 1: 2318 2: C:\Microsoft.Practices.EnterpriseLibrary.Common.dll (SERVER)  MSI (s) (70:AC) [17:35:02:579]: Executing op: SetTargetFolder(Folder=C:\Program Files\Bently Nevada\System 1\Licensing\Bin\) (SERVER)  MSI (s) (70:AC) [17:35:02:579]: Executing op: SetSourceFolder(Folder=1\PROGRA~1\BENTLY~1\SYSTEM~1\LICENS~1\Bin\MSPE\|program files\Bently Nevada\System 1\Licensing\Bin\MSPE\) (SERVER)  MSI (s) (70:AC) [17:35:02:579]: Executing op: |
I can't paste the entire log file cause it's about 32MB.
Anyone have any idea what's happening?
-- spdygnlz --
Posted 13 June 2007 - 18:05
QUOTE |
(SERVER)  MSI (s) (70:AC) [17:35:02:469]: Executing op: SetTargetFolder(Folder=C:\) |
Stefan Krüger
InstallSite.org twitter facebook
Posted 18 June 2007 - 17:29
QUOTE |
The component's source location for each one is GlobalAssemblyCache. |
Shouldn't the destination be set to GAC?
Stefan Krüger
InstallSite.org twitter facebook
Posted 18 June 2007 - 17:37
-- spdygnlz --
Posted 18 June 2007 - 18:51
Stefan Krüger
InstallSite.org twitter facebook
Posted 22 June 2007 - 18:32
Attached Files
-- spdygnlz --
Posted 23 June 2007 - 11:23
Do you get any build warnings?
Does it work if you set .NEt Scan at Build to "Properties" instead of "none"?
How does the Directory table entry look like for the GlobalAssemblyCache, in InstallShield's Direct Editor and in the resulting .msi file?
Stefan Krüger
InstallSite.org twitter facebook
Posted 23 June 2007 - 15:57
-Stein Åsmul
Posted 27 June 2007 - 23:56
Thanks for the help! Much appreciated!
-- spdygnlz --