Microsoft KB Archive/305771

= BUG: Deletion of SOAP Proxy Application Does Not Remove TLBIMPed Assembly from the GAC =

Article ID: 305771

Article Last Modified on 12/5/2007

-

APPLIES TO


 * Microsoft COM+ 1.5, when used with:
 * Microsoft Windows XP Professional

-



This article was previously published under Q305771



SYMPTOMS
If you delete a COM+ application proxy from a client computer, sometimes the deletion does not remove the assembly from the Global Assembly Cache (GAC). This does happen where the COM+ proxy is that of a COM+ application that is exposed by means of a SOAP VRoot.

If the assembly is not removed, the next proxy import of the same application does not work.

Note that the next proxy import of the same application does not work, only if the following conditions are met:


 * The proxy has the same Assembly and the same Typename as a previous proxy install.
 * The new proxy has a different interface than the original proxy. The problem is similar to changing an interface but keeping the same interface identifier (IID).



RESOLUTION
To work around this bug, you can uninstall the assembly from the Global Assembly Cache by using the Global Assembly Cache utility (Gacutil) with the &quot;-u&quot; option.



STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.



Steps to Reproduce the Behavior

 * 1) Export the proxy of the SOAP application from the server computer.
 * 2) Import the proxy on the client computer.

This copies the TLBIMPed assembly to:

%windir%\system32\com\soapassembly\

Then, the TLBIMPed assembly is added to the GAC.
 * 1) Delete the proxy application from COM+.

The TLBIMPed assembly is still in the GAC. However, the expected behavior is that the TLBIMPed assembly is removed from the GAC.

Keywords: kbbug kbnofix KB305771

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.