GDR Update released for the .Net Framework 4


We love it when a good patch comes around – so here is a cumulative patch for the .NET Framework 4.0.

There is a fairly long and extensive list of changes included in the GDR, here is a list of fixes and new features which have been added (from the Microsoft Knowledge Base Article):

Issues that this update rollup package resolves are as follows.

Issue 1

Consider the following scenario:

  • You create a Visual Studio 2010-based add-in application. The add-in application enumerates several projects by using a background thread.
  • You run an instance of Microsoft Visual Studio 2010 and the add-in application.
  • Garbage collection runs.

In this scenario, the instance of Visual Studio 2010 may crash.

Issue 2

Consider the following scenario:

  • You develop a .NET Framework 4-based add-in application for Microsoft Office Excel.
  • You run the add-in application, and then the Application.WorkbookBeforeSave event occurs.

In this scenario, the SaveAsUI parameter in this event is always set to the TRUE value.

Issue 3

If the focus is set to a window of a Visual Studio 2010-based application when the computer enters sleep mode, a memory leak occurs when the computer resumes from sleep mode.

Issue 4

When a .NET Framework 4-based Windows Presentation Foundation (WPF) application tries to load some text from a .ttf file, the text is displayed incorrectly. Additionally, an access violation occurs, and then the application crashes.
Note The stack trace resembles the following:

06bdeafc 71086dd5 dwrite!TrueTypeRasterizer::Implementation::ReleaseSfntFragment()+0x1f
06bdeb5c 7108d327 dwrite!sfac_GetSbitBitmap()+0x428
06bdec10 7108d4d8 dwrite!GetSbitComponent()+0xb5

Issue 5

When you perform a touch manipulation in a .NET Framework 4-based WPF application on a multitouch screen, the application crashes, or the *.vshost.exe process crashes. For example, the application crashes when you try to scroll up or to scroll down.

Issue 6

When you try to select multiple items in the Pending Changes window in Visual Studio 2010, the Visual Studio IDE disappears, and a Dr. Watson error is not generated.

Issue 7

Consider the following scenario:

  • You run Visual Studio 2010 on a 64-bit operating system.
  • You debug an application.
  • You enable the managed debugging assistants (MDA).
  • You try to close the application in the IDE.

In this scenario, the raceOnRCWCleanup MDA incorrectly runs.

Issue 8

When you scroll in a .NET Framework 4-based WPF application while the text in a tab control is being formatted, the application runs slowly.

Issue 9

When you try to host a webpage that has the targetFramework property set as the .NET Framework on a Server Core, you receive the following error message:

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: The ‘targetFramework’ attribute in the <compilation> element of the Web.config file is used only to target version 4.0 and later of the .NET Framework (for example, ‘<compilation targetFramework="4.0">’). The ‘targetFramework’ attribute currently references a version that is later than the installed version of the .NET Framework. Specify a valid target version of the .NET Framework, or install the required version of the .NET Framework.
Source Error:
Line 2: <configuration>
Line 3: <system.web>
Line 4: <compilation debug="false" targetFramework=".NETFramework, version=v4.0" />
Line 5: </system.web>Line 6: </configuration>

Issue 10

Symptom

Consider the following scenario:

  • You create a Visual Studio 2010 application that contains a Dataset database.
  • You drop some tables from Dataset Designer.
  • You check the order of the tables in Dataset Designer.

In this scenario, the tables are sorted incorrectly.
Cause
This issue occurs because of an error in the TableAdapterManager class in Visual Studio 2010.

Issue 11

When a client requests the RESTful web service in an .asmx or a .svc file by using the ASP.NET pipeline and by using the extension-less URL handling, the state of the request might incorrectly change.

Issue 12

In the .NET Framework 4, the Application_Start and PreAppStart methods do not have access to the HttpUtility.HtmlEncode method and to the related APIs.

Issue 13

When you try to run a Microsoft Visual C# or Microsoft Visual Basic application, the application does not run if an Entity Data Model (EDM) references a database project. Additionally, the debugging features of the application do not work.

Issue 14

When you use SQL providers, the following issues occur:

  • An exception is thrown on the garbage collection thread.
  • A Dr. Watson error occurs, and you receive an error message that resembles the following:

    Application: webdev.webserver20.exe

    Blamed Symbol:

    SYSTEM.DATA.NI.DLL!System.Data.ProviderBase.DbConnectionInternal.PrePush

    Exception code: system.invalidoperationexception

    Event Sub type: Clr20r3

  • The w3wp.exe process crashes.
    Note The w3wp.exe process is a web-hosting process.
Issue 15

Symptom
The SqlDataSource class does not support a parameter that is used to access data in a Microsoft SQL Server Compact Edition database.
Cause
This issue occurs because Microsoft SQL Server Compact Edition cannot support a parameter in the SqlDataSource class.

Issue 16

Symptom
When you try to run an ASP.NET webpage, you receive the following error message:

HttpContext.User is supposed to be a MyWindowsPrincipal.

Cause

The issue occurs because the Extensionless URL handler passes the parent IHttpUser interface to the child requests. Therefore, the child requests skip the authentication process.

Issue 17

Consider the following scenario:

  • You have a Visual Studio 2010-based project that has an Entity Data Model (EDM). The EDM references a database that is of medium or large size. For example, the database contains 500 tables.
  • You try to reverse-engineer the tables.

In this scenario, reverse-engineering the tables requires a long time. For example, reverse-engineering 500 tables requires 14 minutes.

Issue 18

Consider the following scenario:

  • You install Visual Studio 2010 Service Pack 1 (SP1) Beta on a computer that is running Internet Information Services (IIS) 6.0.
  • You set the isolation mode to IIS 5.0.
  • You host a webpage in IIS 6.0.

In this scenario, you receive the following error message when you try to access the webpage:

503 – Service unavailable.

Issue 19

After you install a hotfix package that applies the .NET Framework 4, all services that are hosted on Windows Process Activation Services (also known as WAS) may be turned off. Additionally, the services cannot be restarted until you restart the computer. An example of a service is a WAS-hosted Windows Communication Foundation (WCF) service.
The following are the affected activation services:

    Non-HTTP Activation
    • Message Queuing Activation
    • Named Pipes Activation
    • TCP Activation
  • TCP Port Sharing
Issue 20

Consider the following scenario:

  • You have an ASP.NET website that contains a WCF service. The website targets an earlier version of the .NET Framework 4.
  • You do not click to select the Allow this precompiled site to be updatable check box in the Publish Web Site wizard in Visual Studio 2010.
  • You publish the website.
  • A client tries to access the WCF service.

In this scenario, the WCF service does not respond to the client request. Additionally, the .svc.compile file incorrectly references the .NET Framework 4.
Note The .svc.compile file is generated by the publishing process.

Issue 21

Consider the following scenario:

  • You bind the Windows.AutoHide command to a keyboard shortcut.
  • You focus on a toggled tool window in Visual Studio 2010. For example, the focus is located on the Solution Explorer window.
  • You press the keyboard shortcut.

In this scenario, the window hides. However, when you press the key again, the window does not return as toggled.

Issue 22

When you use Visual Studio 2010 to debug an application, many verbose messages that resemble the following are shown in the Output window:

*** HR originated: -2147024774
*** Source File: d:\iso_whid\x86fre\base\isolation\com\copyout.cpp, line 1302
*** HR propagated: -2147024774
*** Source File: d:\iso_whid\x86fre\base\isolation\com\enumidentityattribute.cpp, line 144

Issue 23

Assume that you build a web application on a computer and then publish the application on a different computer. When you use Visual Studio 2010 to attach the application, managed methods cannot be shown because of missing symbols for assemblies.
This problem occurs because the .pdb file that contains the information about symbols is not copied from the bin folder to the shadow copy folder.

Issue 24

You use the My namespace in a Visual Basic project. When you add an explicit reference to the Microsoft.VisualBasic.dll component to the project, the My namespace cannot work correctly. For example, you may receive the following error message:

‘Application’ is not a member of ‘My’.

Issue 25

When you install an ASP.NET 4.0 hotfix, the aspnet_regiis –iru command is triggered. Then, some ASP.NET registry keys are removed.

Issue 26

When you request an .xap file through the Cassini in Visual Studio 2010, the MIME type of the returned response is "application/octet-stream" instead of the expected "application/x-silverlight-app."

Issue 27

In the Visual Studio 2010 IDE, you attach the debugger to a sqlservr.exe process. You set a breakpoint at a managed SQL function or at a managed stored procedure. The symbol file is loaded correctly, and a solid red dot appears. However, Visual Studio does not break at the breakpoint.

Issue 28

You run a Visual Basic application that contains a Visual Basic Core assembly on an operating system that does not have the Visual Basic runtime. If the application contains a SyncLock statement on a variable of type Object, you may receive an error message that resembles the following:

error BC35000: Requested operation is not available because the runtime library function ‘Microsoft.VisualBasic.CompilerServices.ObjectFlowControl.CheckForSyncLockOnValueType’ is not defined.

Issue 29

If you run a Visual Basic application that contains a Visual Basic core, the code that uses constants in the Microsoft.VisualBasic.Constants class cannot run correctly. For example, you may receive the following error message when the code is executed:

error BC30059: Constant expression is required.

This problem occurs because the constants are embedded as normal fields instead of as constant fields.

Issue 30

You deploy a .NET Framework 4-based ASP.NET website in a legacy Code Access Security (CAS) mode. You configure the website with a partial trust. When you try to request this website, you may receive the following error message:

[SecurityException: Request for the permission of type ‘System.Security.Permissions.SecurityPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=<Token ID>’ failed.]

Issue 31

You install the security update that is described in KB974417 when directories in the GAC folder, including the System.EnterpriseServices.dll assembly, are locked or the assembly is being used. In this scenario, the security update installation fails, and the computer becomes corrupted.
For more information about the issue, click the following article number to view the article in the Microsoft Knowledge Base:
2260913  FIX: Updating the .NET Framework may fail and some files in the GAC may be deleted

Issue 32

Some unrestricted asserts from ASP.NET types may bring a risk that a partial-trust user can be elevated as a full-trust user.

Issue 33

The simplified web application paradigm that is called Plan 9 MVC is released more frequently than ASP.NET. However, beginning with version 2, versions are not set as full trust. Therefore, many features that require full trust cannot work correctly.
This update sets the versions of Plan 9 later than version 2 to fully trust.

Issue 34

A constant in a device-level enumeration type in source code differs from that in the specification.
The update keeps the constant in a consistent way.

Issue 35

When you install the security update that is described in the following Knowledge Base article, a Windows Communication Foundation (WCF) service is forcibly closed by the remote host. This problem occurs when the trust level is set to High or to Medium in the Web.config file of the WCF service.

2449742  MS11-NNN: Description of the security update for the Microsoft .NET Framework 2.0 Service Pack 2 and Microsoft .NET Framework 3.5 Service Pack 1 on Windows Vista SP2 and Windows Server 2008 SP2: February 8, 2011

Features that this update rollup package introduces

This update rollup package introduces the following features that are related to the .NET Framework 4.

Feature 1

This update rollup enables ASP.NET to support multiple IIS configuration systems in a design mode. Therefore, Visual Studio Web Designer supports IIS Express. Additionally, Visual Studio Web Designer lets different Visual Studio Solution projects target different versions of IIS.

Feature 2

When a shadow cache assembly that is turned into a symbolic link to the same file is validated, the size of the assembly is not checked. Therefore, ASP.NET uses Optimization for Shared Web Hosting.

Feature 3

New syntax lets you define a TextBox control that is HTML5 compatible. For example, the following code defines a TextBox control that is HTML5 compatible:

<asp:TextBox runat="server" type="some-HTML5-type" />

Feature 4

A new switch is added for the Visual Basic compiler that allows for server control output of HTML5-friendly elements. For example:

<asp:TextBox runat="server" type="some-HTML5-type" />

In earlier versions of the .NET Framework, all Visual Basic applications automatically had a runtime dependency added. The dependency was with the Visual Basic Runtime library file, Microsoft.VisualBasic.dll. With this update, a command-line option can be set to remove this dependency. Some functionality of the Visual Basic Runtime is embedded in the application, and other functionality is no longer available with the switch set.

Feature 5

Changes to the support portable libraries. These changes include API updates and binder modifications. This update enables the CLR to bind successfully to portable libraries so that a single DLL can run on the .NET Framework 4, on Silverlight, on Xbox, or on the Windows Phone. This update adds public Silverlight APIs to the .NET Framework 4 in the same location. The API signatures will remain consistent across the platform. All modifications are 100 percent compatible and will not break any existing code.

Feature 6

The update extends the support of the portability files to compile Silverlight 5 XAML files.

Support Links

http://support.microsoft.com/kb/2468871

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3556


About Rob Sanders

IT Professional and TOGAF 9 certified architect with nearly two decades of industry experience, 18 years in commercial software development and 11 years in IT consulting. Check out the "About Rob" page for more information.

Leave a comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>