Hotfix rollup 3096435 for the .NET Framework 2.0 SP2 on Windows Vista SP2 and Windows Server 2008 SP2

Applies to: Windows Vista Service Pack 2Windows Server 2008 Service Pack 2

This article describes hotfix rollup 3096435 that's available for the Microsoft .NET Framework 2.0 Service Pack 2 (SP2). For more information about the issues that the hotfix rollup fixes, see the "Issues that this hotfix rollup fixes" section.


A supported hotfix is now available from Microsoft. However, it's intended to correct only the problem that this article describes. Apply it only to systems that are experiencing this specific problem.

To fix this problem, contact Microsoft Customer Support Services to get the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, go to the following Microsoft website:Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will fix your problem. The usual support costs will apply to additional support questions and issues that don't qualify for the specific update in question.

More Information


To apply this hotfix, you must have the .NET Framework 2.0 SP2 installed.

Restart requirement

You have to restart the computer after you apply this hotfix if any affected files are being used. We recommend that you close all .NET Framework-based applications before you apply this hotfix.

Hotfix replacement information

This hotfix package doesn't replace a previously released hotfix package.

Issues that this hotfix rollup fixes

Issue 1

The ResourceManager has a race condition in AddResourceSet. When multiple threads are adding resourcesets, ObjectDisposedExceptions occur. 

For example:

ResourceManager uses one ResourceSet for potentially multiple cultures, such as fr-FR and fr. If you add one culture (like fr-FR) on one thread and then add fr on another thread, the first thread may try to add its ResourceSet for fr. In this situation, the first thread will close the already-added resource for fr-FR, and that causes ObjectDisposedExceptions on other threads.

Issue 2

When you try to run a command on the server, it time outs on the client-side, but finishes on the server. Then, the client sends an attention packet to the server, and sets itself into a timed-out state. However, the client doesn't reset the state as soon as it recovers from the time-out if the server processed the statement that the client timed out on. 

This fix resets the state for the client when it can recover from a time-out.