Microsoft KB Archive/832096

= FIX: Transactions may not be sent when you call the Dispose method of the loaded object =

Article ID: 832096

Article Last Modified on 11/8/2004

-

APPLIES TO

 Microsoft COM+ 1.0, when used with:  Microsoft Windows 2000 Standard Edition

 Microsoft Enterprise Services (included with the .NET Framework) 1.0

 Microsoft Common Language Runtime (included with the .NET Framework) 1.0 

-

<div class="notice_section">

<div class="symptoms_section">

SYMPTOMS
When you use the Reflection class to dynamically load a Reflection.Assembly object, you may find that the transactions of an object are not committed when the Dispose method of the loaded object is called.

<div class="cause_section">

CAUSE
This problem occurs when all the following conditions are true:
 * You dynamically load an Reflection.Assembly class.
 * The ContextUtil.SetComplete method is called before a transaction begins.
 * You use the Dispose method to start the transaction.

This problem occurs because the just-in-time (JIT) compiler does not deliver Deactivate notification when assemblies that are loaded with the Reflection class call the ContextUtil.SetComplete method before they call the Object.Dispose method.

<div class="workaround_section">

WORKAROUND
To work around this problem, comment out calls to the ContextUtil.SetComplete method before the transaction starts.

<div class="resolution_section">

How to obtain the hotfix
This issue is fixed in the Microsoft Windows 2000 Server COM+ 1.0 Hotfix Package 28. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

828748 FIX: Availability of Windows 2000 Post-Service Pack 4 COM+ 1.0 hotfix rollup package 28

<div class="status_section">

STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section of this article.

Keywords: kbbug kbfix kbqfe kbhotfixrollup kbwin2000presp5fix KB832096

-

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

© Microsoft Corporation. All rights reserved.