FIX: Error message when you run a managed application that uses a WebBrowser control on a Windows Embedded CE 6.0-based device: "Invalid URI: The hostname could not be parsed"

Symptoms

On a Windows Embedded CE 6.0-based device, a managed application exits abnormally when you use a WebBrowser control. Additionally, you receive the following error message:


Invalid URI: The hostname could not be parsed.

This problem occurs when the following conditions are true:

  • The WebBrowser control tries to trigger a navigating event in response to a navigation request.

  • The request contains a URL that references a Web page that is stored in a local resource dynamic link library (DLL).

Cause

This problem occurs because the logic of the .NET Compact Framework URL parser that validates a URL does not recognize the format of the URL that the request contains. The logic is used by the Uniform Resource Identifier (URI) class.

Resolution

Software update information

A supported software update is now available from Microsoft as Windows CE 6.0 Platform Builder Monthly Update (September 2009). You can confirm this by scrolling to the "File information" section of this article. The package file name contains the product version, date, Knowledge Base article number, and processor type. The package file name format is:

Product version-yymmdd-kbnnnnnn-processor typeFor example: Wincepb50-060503-kb917590-armv4i.msi is the ARMV4i Windows CE 5.0 Platform Builder fix that is documented in KB article 917590 and that is contained in the May 2006 monthly update. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

Prerequisites

This update is supported only if all previously issued updates for this product are installed.

Restart requirement

After you apply this update, you must perform a clean build of the whole platform. To do this, use one of the following methods:

  • On the Build menu, click Clean, and then click Build Platform.

  • On the Build menu, click Rebuild Platform.

You do not have to restart the computer after you apply this update.

Update replacement information

This update does not replace any other updates.

File information

The English version of this software update package has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name

File size

Date

Time

Windows embedded ce 6.0_update_kb976213.htm

6,546

30-Sep-2009

20:04

Wincepb60-090930-kb976213-common.msi

611,840

30-Sep-2009

20:45



File name

File size

Date

Time

Path

System.dll

526,504

26-Sep-2009

00:56

Others\Dotnetv35\Managed

Workaround

To work around this problem, set the value of the Friendly http errors registry entry to no. The registry is under the HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main registry subkey.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

When a server sends an error response code, the native Web browser components may move to a Web page that is stored in a local resource DLL. When this behavior occurs, the resulting URL starts with the "HTTP://\Windows\shdoclc.dll/" string.

For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Call stack information

at System.Uri.CreateThis() at System.Uri.ctor() at System.Windows.Forms.WebBrowser.WnProc() at System.Windows.Forms.Control._InternalWnProc() at Microsoft.AGL.Forms.EVL.EnterMainLoop() at System.Windows.Forms.Application.Run() 

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

Thank you for your feedback!

Thank you for your feedback! It sounds like it might be helpful to connect you to one of our Office support agents.

×