C# Webbrowser 구성 요소에서 오프라인을 감지 하시겠습니까?
-
19-09-2019 - |
문제
우리는 포장 된 Webbrowser 구성 요소를 연구하고 있습니다. 사용자가 온라인 상태이고 다른 페이지 (예 : c : whenegre the the the thispage_offline.html) 인 경우 한 페이지 (예 : oursite.com/thispage.html)를 표시하고 싶습니다. 두 페이지를 모두 표시 할 수 있지만 내 문제는 온라인/오프라인 상태를 감지하는 것입니다.
나는 시도했다webbrowser.isoffline; 그러나 컴퓨터가 실제로 인터넷에 도달 할 수 있는지 여부가 아니라 오프라인 모드 상태 만 릴레이되는 것 같습니다.
WebBrowser 구성 요소에서 이것을 감지하는 방법이 있습니까? 전혀 방법이 있습니까?
모든 도움에 감사드립니다!
해결책
인터넷 연결을 확인하는 가장 간단한 방법은 서버를 핑하는 것입니다.
이 코드를 시도하십시오 :
public static bool IsOnline() {
var pinger = new Ping();
try {
return pinger.Send("oursite.com").Status == IPStatus.Success;
} catch(SocketException) { return false; } catch(PingException) { return false; }
}
또는 사용해 볼 수 있습니다 WebRequest
수업 사이트의 간단한 페이지로 요청을 보내고 성공 여부를 확인하십시오. 또한 IIS (또는 Apache)가 서버에서 실행되도록하기 때문에 더 나은 옵션입니다.
다른 팁
방금 사용했다면 어떨까요? 핑 사이트를 사용할 수 있는지 확인하기 위해 클래스?
제휴하지 않습니다 StackOverflow