修正: Windows Embedded CE 6.0 ベースのデバイスで WebBrowser コントロールを使用するマネージド アプリケーションを実行すると、"無効な URI: ホスト名を解析できませんでした" というエラー メッセージが表示される

現象

Windows Embedded CE 6.0 ベースのデバイスで、WebBrowser コントロールを使用すると、管理対象アプリケーションが異常終了する。 さらに、以下のエラー メッセージが表示されます。

注

無効な URI: ホスト名を解析できませんでした。

この問題は、以下の条件に該当する場合に発生します。

  • WebBrowser コントロールは、ナビゲーション要求に応答してナビゲーション イベントをトリガーしようとします。

  • 要求には、ローカル リソースのダイナミック リンク ライブラリ (DLL) に保存されている Web ページを参照する URL が含まれています。

原因

この問題は、URL を検証する .NET Compact Framework URL パーサーのロジックが、要求に含まれる URL の形式を認識しないために発生します。 このロジックは、Uniform Resource Identifier (URI) クラスによって使用されます。

解決策

ソフトウェア更新プログラムの情報

サポートされているソフトウェア更新プログラムは、マイクロソフトから Windows CE 6.0 プラットフォーム ビルダーのマンスリー更新プログラム (2009 年 9 月) として入手できるようになりました。 これは、この記事の「ファイル情報」セクションまでスクロールすることで確認できます。 パッケージ ファイル名には、製品のバージョン、日付、サポート技術情報の記事番号、およびプロセッサの種類が含まれます。 パッケージ ファイル名の形式は次のとおりです。

Product version-yymmdd-kbnnnnnn-processor type。例: Wincepb50-060503-kb917590-armv4i.msi は、サポート技術情報の記事 917590 に記載されており、2006 年 5 月のマンスリー更新プログラムに含まれている ARMV4i Windows CE 5.0 プラットフォーム ビルダーの修正プログラムです。 この問題をすぐに解決するには、次の記事番号をクリックして、Windows CE プラットフォーム ビルダーおよびコア オペレーティング システム ソフトウェアの更新プログラムの入手に関する情報を確認してください。

837392 Microsoft Windows CE Platform Builder 製品の主要なオペレーティング システムの修正プログラムを見つける方法

前提条件

この更新プログラムは、この製品用として以前に発行されたすべての更新プログラムがインストールされている場合にのみサポートされます。

再起動の必要性

この更新プログラムを適用した後に、プラットフォーム全体のクリーン ビルドを実行する必要があります。 これを行うには、以下のいずれかの方法を使用します。

  • [ ビルド] メニューの [クリーン] をクリックし、[ プラットフォームのビルド] をクリックします。
  • [ ビルド] メニューの [ プラットフォームの再構築] をクリックします。

この更新プログラムの適用後に、コンピューターを再起動する必要はありません。

更新プログラムの置き換えに関する情報

この更新プログラムを適用しても、他の更新プログラムが置き換えられることはありません。

ファイル情報

ソフトウェア更新プログラム パッケージ (英語版) のファイル属性は次表のとおりです。ただし、これより新しい更新プログラムがリリースされている可能性もあります。 これらのファイルの日付と時刻は世界協定時 (UTC) で記載されています。 ファイル情報に表示される時刻は、ローカル時刻に変換されています。 UTC とローカル時刻との時差を確認するには、[コントロール パネル] の [日付と時刻] の [タイム ゾーン] タブを使用してください。

ファイル名 ファイル サイズ 日付 時刻
Windows Embedded CE 6.0_update_kb976213.htm 6,546 2009 年 9 月 30 日 2,004
Wincepb60-090930-kb976213-common.msi 611,840 2009 年 9 月 30 日 20:45

                
              

ファイル名 ファイル サイズ 日付 時刻 パス
System.dll 526,504 2009 年 9 月 26 日 00:56 Others\Dotnetv35\Managed

回避策

この問題を回避するには、HTTP エラーのフレンドリ エントリの値を no に設定します。 レジストリは、 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main レジストリ サブキーの下にあります。

状態

Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。

追加情報

サーバーがエラー応答コードを送信すると、ネイティブ Web ブラウザー コンポーネントが、ローカル リソース DLL に保存されている Web ページに移動する場合があります。 この現象が発生すると、結果の URL は "HTTP://\Windows\shdoclc.dll/" 文字列で始まります。

ソフトウェア更新プログラムに関する用語の関連情報を参照するには、以下のサポート技術情報番号をクリックしてください。

824684 Microsoft のソフトウェア更新プログラムの説明で使用される一般的な用語の解説

呼び出し履歴情報

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()