Applies To.NET Framework 3.5 Service Pack 1 Microsoft Windows XP Professional x64 Edition Microsoft Windows XP Professional x64 Edition Microsoft Windows XP Professional x64 Edition

Symptoms

When you install certain updates for the .NET Framework 2.0 Service Pack 2, the .NET Framework 3.0 Service Pack 2, or the .NET Framework 3.5 Service Pack 1, the update may install successfully. However, files may not be updated. Therefore, the update may be reoffered on Windows Update.

Cause

This scenario may occur for several reasons that include certain installation failure issues that are related to dual branch servicing. Between January 2009 and July 2009, several hotfixes for the .NET Framework 2.0 Service Pack 2, the .NET Framework 3.0 Service Pack 2, and the .NET Framework 3.5 Service Pack 1 were released with a defect. When hotfixes that have this defect are installed, and then a security update is installed, the presence of the hotfix prevents the payload files in the security update from being updated correctly. In certain cases, this issue may also manifest itself in the form of the error that is described in the following Microsoft Knowledge Base article:

2262911 "Could not load type 'System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy'" exception error after you install update 982167 or update 982168 Microsoft has removed all the hotfixes that included this defect and has replaced these with new hotfixes that do not have the defect. The Microsoft Knowledge Base articles for the defective hotfixes were updated, and they list the replacement hotfixes without the defect. If you have installed one of the defective hotfixes that are listed here, apply the workaround that is described in the "Workaround" section of this article to address the issue. If you do not apply the workaround, there is a possibility that the files in the payload for a security update may not be updated correctly, leaving the computer in an inconsistent and possibly vulnerable state.

List of defective Hotfixes

946411

FIX: When you print an XPS file on a Windows XP Service Pack 2 or Service Pack 3-based computer, the characters in the XPS file print incorrectly

952883

IX: The return type or the out argument of an ASMX service method that includes a property that has an internal setter may not be serialized on a computer that has the .NET Framework installed

958090

FIX: The System.EnterpriseServices.TransactionProxyException exception cannot be caught from other application domains when it is triggered during a transaction completion

958252

FIX: When you use the Msdatasetgenerator custom tool in the .NET Framework 2.0 Service Pack 1 (SP1), the scale value and the precision value in the generated code for a third-party .NET data provider differ from the values that you set

960442

FIX: You receive an exception error message when you use the BinaryFormatter object to serialize and to deserialize a generic type in an assembly in the .NET Framework 2.0 Service Pack 2 or in the .NET Framework 3.5 Service Pack 1

960754

FIX: You receive the ObjectDisposedException exception when you refer to the Transaction.Current.TransactionInformation object

961847

FIX: Error message when you view a page in design mode after you recompile a .NET Framework 3.5 Service Pack 1-based project: "Error creating control – 'ControlInstanceName [text]' could not be set on property 'PropertyName'”

961864

FIX: Web clients may have several problems when you access an ASP.NET 2.0 AJAX-enabled Web site

961870

FIX: A memory leak occurs when you run an application that requires the CLR to load a mixed-mode assembly in the .NET Framework 2.0 Service Pack 2

961881

FIX: An access violation occurs when you start an application that runs on the CLR

961884

FIX: You experience very slow performance on an initial request to an ASP.NET Web site after you change the App_Code folder, the bin folder, or the Global.asax file

961885

FIX: You receive an Access Violation error when you run a CLR application that calls the XslCompiledTransform.Transform method

961901

FIX: The specific IME mode that you set for an Edit field may disappear when you return to the Edit field from a .NET Framework 2.0 SP2-based Windows formFIX: The specific IME mode that you set for an Edit field may disappear when you return to the Edit field from a .NET Framework 2.0 SP2-based Windows form

961902

FIX: Error message when you compile an ASP.NET project that contains many application resource files: "A first chance exception of type 'System.ArgumentException' occurred in mscorlib.dll"

962351

FIX: The pop-out menus are not displayed when you use Internet Explorer 8.0 in Standards mode to view an ASP.NET Web page that has dynamic menus

962890

FIX: Error message when a .NET Framework 2.0-based application calls the XmlTextReader.Read function repeatedly: "'Permission' start tag on line 171 does not match the end tag of 'PermissionRead'"

963676

FIX: The CLR fails with a fatal execution engine error, and a crash occurs when you run an application by using the .NET Framework 2.0 Service Pack 2

967114

FIX: Error message when you use the System.Data.DataTable.InsertRow method or any other overload method in a .NET Framework 2.0-based application to insert rows into a table: "Arithmetic operation resulted in an overflow"

967613

FIX: An application that monitors event log entries crashes when it calls the Dispose method of the System.Diagnostics.EventLog class

967615

FIX: A .NET Framework 2.0 SP2-based application or a .NET Framework 3.5 SP1-based application does not correctly dispose of safe handle objects that were created by the WindowsIdentity object

967812

A hotfix is available that updates some properties in the System.Globalization.RegionInfo class for Slovakia, for Slovenia, and for Turkey

968108

FIX: Web clients crash or you experience unexpected behavior when you access an ASP.NET 2.0 AJAX-enabled Web site that is deployed in a Web farm

968249

FIX: An incorrect instance size is generated when you use the Type Library Exporter to generate a type library from a CLR assembly in the .NET Framework 2.0 Service Pack 2

968392

Error message and the hyperlink control is not rendered if the ImageUrl property is set in Visual Studio 2005 or Visual Studio 2008 after you install .NET Framework 2.0 SP2 or .NET Framework 3.5 SP1:"Object reference not set to an instance of an object"

968432

FIX: A System.InvalidOperationException exception occurs when you run a Web application that is based in the .NET Framework 2.0 SP2 or in the .NET Framework 3.5 SP1

968556

FIX: The XslCompiledTransform.Transform method does not have an overload method that accepts both the XPathNavigator and XmlResolver objects as arguments in .NET Framework 2.0

968760

A managed application has a high number of thread handles and of event handles in the Microsoft .NET Framework 2.0

969364

FIX: Code blocks embedded in an ASP.NET 2.0 Web page disappear when you use the Generate Local Resource tool in Visual Web Developer to generate a local resource file

969612

Description of the hotfix rollup package for ASP.NET 2.0: April 2009

969722

FIX: "ASP.NET Apps v2.0.50727(__Total__)\Sessions Active" performance counter shows an unreasonably high value after Microsoft .NET Framework 3.5 Service Pack 1 is installed

969836

FIX: A worker thread in a .NET Framework 2.0-based Windows Forms application may be blocked when it calls the Control.Invoke method even if the GUI thread is idle

970350

FIX: Exception error message when a System.Drawing.FontConverter object invokes the FontFamily.Families property in the .NET Framework 2.0 SP2 or in the .NET Framework 3.5 SP1: "Out of Memory"

970510

FIX: A TypeLoadException exception occurs when you run a .NET Framework 3.5 SP1-based application

970924

FIX: The performance of applications that use the CreateType method decrease as you add more type objects to a dynamic assembly module in the .NET Framework 2.0 SP2

971030

FIX: An access violation occurs when you run a .NET Framework 2.0-based application that has a virtual call the IList<T>, IEnumerable<T>, or ICollection<T> interface in an LCG method

971169

FIX: Error message when you run an ASP.NET 2.0 Web application if the global resource file name contains the culture name "zh-Hant"

971601

FIX: The performance counters that monitor an application stop responding when the application exits and restarts and you receive the System.InvalidOperationException exception on a computer that is running .NET Framework 2.0

971988

FIX: The CPU usage increases significantly when you run a .NET Framework 2.0-based Multi- AppDomain application that uses objects whose finalizers start ThreadPool methods

971993

Description of the hotfix that enables ASP.NET Web applications to support claims-based identities when you use membership providers

972259

FIX: The threads of a .NET Framework 2.0 SP2- based program pause for a very long time when concurrent garbage collection is enabled

972848

FIX: A minidump file generation is slow and the size of the file is larger than expected when the information that the file collects is not of the MiniDumpWithFullMemory type in the .NET Framework 2.0

For more information about dual branch servicing, click the following article number to view the article in the Microsoft Knowledge Base:

960043 Dual Branch Servicing for the .NET Framework 2.0 Service Pack 2, the .NET Framework 3.0 Service Pack 2, and the .NET Framework 3.5 Service Pack 1

Workaround

To work around this problem, follow these steps.

Step 1

Install hotfix 975954. To download the MSI updates, visit the following MSDN webpage:

http://code.msdn.microsoft.com/KB975954/Release/ProjectReleases.aspx?ReleaseId=3839

Step 2

Run a repair of the product. We can repair the product for you automatically, or you may repair the product yourself.

Run the repair for me

To run a repair of the product automatically, click the Fix it button. Then click Run in the File Downloaddialog box, and then follow the steps in the Fix it wizard.

Note This wizard is in English only. However, the automatic fix also works for other language versions of Windows. Note If you are not on the computer that has the problem, you can save the automatic fix to a flash drive or a CD so that you can run it on the computer that has the problem.

Let me repair it myself

To repair the product yourself, type the following appropriate command lines from an elevated command prompt:

  • If you only have the .NET Framework 2.0 Service Pack 2 installed, run the following command:

    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}This command repairs the .NET Framework 2.0 SP2 product layers.

  • If you have the .NET Framework 3.0 Service Pack 2 installed, run the following commands:

    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}msiexec /f {A3051CD0-2F64-3813-A88D-B8DCCDE8F8C7}These commands repair both the .NET Framework 2.0 SP2 and the .NET Framework 3.0 SP2 product layers.

  • If you have the .NET Framework 3.5 Service Pack 1 installed, run the following commands:

    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}msiexec /f {A3051CD0-2F64-3813-A88D-B8DCCDE8F8C7}msiexec /f {CE2CDD62-0124-36CA-84D3-9F4DCF5C5BD9}These commands repair the .NET Framework 2.0 SP2, the .NET Framework 3.0 SP2, and the .NET Framework 3.5 SP1 product layers.

When you repair the product layers by running these commands, this causes all features in that product layer (the .NET Framework 2.0 SP2, the .NET Framework 3.0 SP2, and the .NET Framework 3.0 SP1) to reevaluate their installation state. This resolves the issue that is caused by the bad baseliner and lets the update apply its payload successfully. For more information about how to run a command that uses elevated permissions, visit the following Microsoft webpage:

http://windows.microsoft.com/en-US/windows7/Command-Prompt-frequently-asked-questions

Step3

You may have to reinstall a hotfix that was updated and replaced as mentioned in the "Cause" section. To determine whether you have to reinstall such an updated hotfix, examine the "Hotfix replacement information" section in the Knowledge Base article for the hotfix that you installed.

More Information

For more information about the command-line switches that are supported by Windows Installer, visit the following MSDN webpage:

Command-Line OptionsFor more information about Windows Installer, visit the following MSDN webpage:

About Windows Installer

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.