You receive an error message when you try to remove assemblies by using the GacUtil utility in the .NET Framework 1.0 (892463)



The information in this article applies to:

  • Microsoft .NET Framework 1.0

SYMPTOMS

When you try to remove an assembly from the Global Assembly Cache (GAC) by using the by using the GacUtil /u command in Microsoft .NET Framework 1.0, you receive an error message that is similar the following:
Unable to uninstall: assembly is required by one or more applications
Pending references:
SCHEME: <WINDOWS_INSTALLER> ID: <MSI> DESCRIPTION : <Windows Installer>
Number of items uninstalled = 0
Number of failures = 0

Note The assembly that you are trying to remove was not installed by using the Windows Installer. The assembly was installed by using the GacUtil /i command.

CAUSE

This problem occurs when the following two conditions are true:
  • The GacUtil utility checks with the Windows Installer to determine whether the assembly is independent from other assembly interference.
  • The Windows Installer reports to the GacUtil utility that the assembly is independent from other assembly interference when the default subkey contains a value for any one of the following registry subkeys:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\Global
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Managed\<users SID>\Installer\Assemblies\Global
    • HKEY_CURRENT_USER\Software\Microsoft\Installer\Assemblies\Global
    • HKEY_CLASSES_ROOT\Installer\Assemblies\Global

RESOLUTION

To resolve this problem, remove the value from the Default subkeys for the following registry subkeys if the subkey has a value other than "Value not set:"
  • HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\Global
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Managed\<users SID>\Installer\Assemblies\Global
  • HKEY_CURRENT_USER\Software\Microsoft\Installer\Assemblies\Global
  • HKEY_CLASSES_ROOT\Installer\Assemblies\Global
The default value for all these subkeys is (Value not set).

MORE INFORMATION

Steps to reproduce the problem

  1. At a command prompt, install the assembly by typing the following command: C:\%WINDIR%\Microsoft.NET\Framework\v1.0.3705\Gacutil.exe /i DriveLetter:/path/userassembly.dll
  2. At a command prompt, remove the assembly by typing the following command: C:\%WINDIR%\Microsoft.NET\Framework\v1.0.3705\Gacutil.exe /u userassembly

    Note You receive an error message.

Modification Type:MajorLast Reviewed:1/28/2005
Keywords:kbfix kbprb KB892463 kbAudDeveloper