- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Some GAC dlls are uninstalled during major upgrade
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Some GAC dlls are uninstalled during major upgrade
During a major upgrade from version 3.1.4022.29 to 3.1.4023.114 we discoverd, that some assemblies in the global assembly cache get uninstalled. All our GAC files are marked as permanent. As you see in the attached Screenshots, the assembly versions 3.1.4022.2 of TcXaeVsx.11.0.dll - TcXaeVasx.15.0.dll are not longer present after the major update. TcXaeVsx.dll in version 3.1.4022.2. does not get uninstalled.
We change the assembly and file version in our DLLs as you can see in the screenshots from MSIOrca and ILSpy, too. As we know, this is required, to keep all installed GAC files (https://blogs.msdn.microsoft.com/astebner/2007/02/09/assemblies-may-be-missing-from-the-gac-or-winsxs-cache-after-an-msi-major-upgrade/). We cannot change the uninstall-install-order in our setup as we cannot perform a manual uninstall in major upgrade, because we have to provide silent installations und updates.
In the log files we get the error 1607 (ERROR_UNKNOWN_COMPONENT, The component identifier is not registered) for all TcXaeVsx.*.dll, but not for TcXaeVsx.dll:
MSI (s) (FC:C4) [09:32:06:156]: Entering MsiProvideAssembly. AssemblyName: TcXaeVsx.15.0, Version=3.1.4022.2, Culture=neutral, PublicKeyToken=180016cd49e5e8c3, processorArchitecture=MSIL, AppContext: , InstallMode: -4 MSI (s) (FC:C4) [09:32:06:156]: Pathbuf: 0, pcchPathBuf: 0 MSI (s) (FC:C4) [09:32:06:249]: MsiProvideAssembly is returning: 1607 MSI (s) (FC:C4) [09:32:06:249]: Entering MsiProvideAssembly. AssemblyName: TcXaeVsx.15.0, Version=3.1.4022.2, Culture=neutral, PublicKeyToken=180016cd49e5e8c3, processorArchitecture=MSIL, AppContext: , InstallMode: -4 MSI (s) (FC:C4) [09:32:06:249]: Pathbuf: 0, pcchPathBuf: 0 MSI (s) (FC:C4) [09:32:06:327]: MsiProvideAssembly is returning: 1607 MSI (s) (FC:C4) [09:32:06:327]: Entering MsiProvideAssembly. AssemblyName: TcXaeVsx.15.0, Version=3.1.4022.2, Culture=neutral, PublicKeyToken=180016cd49e5e8c3, processorArchitecture=MSIL, AppContext: , InstallMode: -4 MSI (s) (FC:C4) [09:32:06:327]: Pathbuf: 0, pcchPathBuf: 0 MSI (s) (FC:C4) [09:32:06:421]: MsiProvideAssembly is returning: 1607 MSI (s) (FC:C4) [09:32:06:421]: Entering MsiProvideAssembly. AssemblyName: TcXaeVsx.15.0, Version=3.1.4022.2, Culture=neutral, PublicKeyToken=180016cd49e5e8c3, processorArchitecture=MSIL, AppContext: , InstallMode: -4 MSI (s) (FC:C4) [09:32:06:421]: Pathbuf: 0, pcchPathBuf: 0 MSI (s) (FC:C4) [09:32:06:514]: MsiProvideAssembly is returning: 1607 MSI (s) (FC:C4) [09:32:06:514]: Entering MsiProvideAssembly. AssemblyName: TcXaeVsx,Version="3.1.4022.2",PublicKeyToken="180016CD49E5E8C3",Culture="neutral",FileVersion="3.1.4022.9",ProcessorArchitecture="MSIL", AppContext: , InstallMode: -4 MSI (s) (FC:C4) [09:32:06:514]: Pathbuf: 0, pcchPathBuf: 0 MSI (s) (FC:C4) [09:32:06:608]: Using cached product context: machine assigned for product: ECA9F3C55022584439EA4068C23A361F MSI (s) (FC:C4) [09:32:06:608]: MsiProvideAssembly is returning: 0
When we change the component GUIDs for TcXaeVsx.*.dlls in 3.1.4023.114, not GAC files gets uninstalled. Why does it seems to be required for some GAC files but not for all GAC files?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content