インターネット接続が利用可能かどうかを確認するために、この関数を作成しました。
bool IsOnline()
{
try
{
var request = (HttpWebRequest)WebRequest.CreateHttp("http://www.google.com/");
request.Timeout = 2000;
var response = (HttpWebResponse)request.GetResponse();
return ((int)response.StatusCode) < 400;
}
catch (Exception) { return false; }
}
ほとんどすべての場合に機能するようですが、私の仕事用ネットワークでは、接続が利用可能なときにタイムアウトエラーが発生するとfalseが返されます。
注:-この関数はfalseを返しますが、WPFアプリケーションのWebブラウザーコンポーネントを使用してオンラインにすることができます-接続はかなり良好です。(したがって、google.comの読み込みに2秒以上費やすことはできません)-コントロールパネル/インターネットオプション/接続で正しく構成されたプロキシの背後にいます
何か案は?