Access violation may occur in CoDisconnectObject

This article has been archived. It is offered "as is" and will no longer be updated.
SYMPTOMS
When you call the CoDisconnectObject function, an access violation may occur. The access violation may include the following call stack:
ChildEBP   RetAddr             0339fe88 72e83904 ole32!CoDisconnectObject+0xa9 0339ff80 780060ce  RPCClie!CClientInstance::ClientInstanceThreadProc+0x6e0 0339ffb4 77e787dd  MSVCRT!_threadstartex+0x5f 0339ffec 00000000  KERNEL32!BaseThreadStart+0x52
RESOLUTION

How to obtain the hotfix

Windows 2000

This issue is fixed in the Microsoft Windows 2000 Post-Service Pack 4 (SP4) COM+ 1.0 Hotfix Package 27. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
822618 INFO: Availability of Windows 2000 Post-Service Pack 4 COM+ Hotfix Rollup Package 27

Windows XP

This issue is fixed in the Microsoft Windows XP COM+ Hotfix Rollup Package 9. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
895200 Availability of the Windows XP COM+ Hotfix Rollup Package 9
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.
MORE INFORMATION
The CoDisconnectObject function should not generate an access violation if there are still outstanding function calls on the objects that are disconnected. In this situation, CoDisconnectObject should return CO_E_OBJECTNOTCONNECTED instead so that any existing calls are permitted to finish, and any new calls will not be processed.
kbWin2000preSP5COMRollup27Fix AV
Properties

Article ID: 819575 - Last Review: 01/17/2015 07:16:17 - Revision: 4.3

  • Microsoft COM+ 1.5
  • Microsoft COM+ 1.0
  • kbnosurvey kbarchive kbwinxppresp3fix kbqfe kbfix kbbug kbwin2000presp5fix KB819575
Feedback