code_junkie

Checking network status in C#

Nov 12th, 2011
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. bool networkUp
  2. = System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable();
  3.  
  4. NetworkInterface[] networkCards
  5. = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces();
  6.  
  7. NetworkChange.NetworkAvailabilityChanged += new NetworkAvailabilityChangedEventHandler(NetworkChange_NetworkAvailabilityChanged);
  8.  
  9. _isNetworkOnline = NetworkInterface.GetIsNetworkAvailable();
  10.  
  11.  
  12.  
  13. void NetworkChange_NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e)
  14. {
  15. _isNetworkOnline = e.IsAvailable;
  16. }
  17.  
  18. IPEndPoint ipep = new IPEndPoint(Ipaddress.Parse("IP TO CHECK"), YOUR_PORT_INTEGER);
  19. Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
  20. server.Connect(ipep);
  21.  
  22. Ping netMon = new Ping();
  23. PingResponse response = netMon.PingHost(hostname, 4);
  24. if (response != null)
  25. {
  26. ProcessResponse(response);
  27. }
  28.  
  29. using System;
  30. using System.Net;
  31.  
  32. class Program {
  33.  
  34. static void Main () {
  35. HttpWebRequest req = WebRequest.Create(
  36. "http://www.oberon.ch/") as HttpWebRequest;
  37. HttpWebResponse rsp;
  38. try {
  39. rsp = req.GetResponse() as HttpWebResponse;
  40. } catch (WebException e) {
  41. if (e.Response is HttpWebResponse) {
  42. rsp = e.Response as HttpWebResponse;
  43. } else {
  44. rsp = null;
  45. }
  46. }
  47. if (rsp != null) {
  48. Console.WriteLine(rsp.StatusCode);
  49. }
  50. }
  51.  
  52. }
Add Comment
Please, Sign In to add comment