- - PR -
C#のWebClient使用時にHeaderEncoding初期化エラー
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-01-26 10:28
いつも参考にさせてもらっています。
開発環境はWinXP VS.NET2003 C# です。 Webサーバーからデータをダウンロードするときに、一部のPCでダウンロードできない状態となっています。 エラーは以下のようなコードで再現できます。 [STAThread] static void Main(string[] args) { System.Net.WebClient wc = new System.Net.WebClient(); System.IO.Stream st = wc.OpenRead("http://www.yahoo.com"); using(System.IO.StreamReader sr = new System.IO.StreamReader(st)){ Console.WriteLine(sr.ReadToEnd()); } st.Close(); Console.ReadLine(); } 最終的な例外は「タイムアウトしました」となりますが、コンソールの画面に以下のようなメッセージが表示されます。 ハンドルされていない例外:System.IO.IOExcetpion: 転送接続を作成できません。--- > System.TypeInitializationException: "HeaderEncoding" のタイプ初期化子が例外をスローしました。 ---> System.ArgumentException: 無効か、またはサポートされないコードページの種類です。 at System.Text.CodePageEncoding.GetCPMaxCharSizeNative(Int32 codePage) at System.Text.CodePageEncoding..ctor(Int32 codePage) at System.Text.Encoding.GetEncodingRare(Int32 codePage) at System.Text.Encoding.GetEncoding(Int32 codePage) at System.Net.HeaderEncoding..cctor() --- 内部例外スタックトレースの終わり --- at System.Net.HttpWebRequest.MakeRequest() at System.Net.HttpWebRequest.EndSubmitRequest() at System.Net.HttpWebRequest.SetRequestSubmitDone(ConnectStream submitStream) at System.Net.Connection.StartConnectionCallback(Object state, Boolean wasSignalled) --- 内部例外スタックトレースの終わり --- at System.Net.Connection.StartConnectionCallback(Object state, Boolean wasSignalled) 同じコードでも正常に動作するPCもあるのですが、 ある一部環境で上記のような症状が発生しています。 その環境ではブラウザは正常に動作しますし、 またC#で作成した、Socketを利用する方式のダウンロードなら可能でした。 ただしC#でWebRequestを利用した場合は、上記と同様のエラーが発生します。 .NET Frameworkの再セットアップと、 アップデートを行いましたが、改善しませんでした。 このような症状について情報はありませんでしょうか。 よろしくお願いいたします。 |
1