摘要:[C#] 檢查主機是否有連上網路
一般來說測試連線,標準的作法大概為:
1. ping LocalHost (ex:127.0.0.1)。
2.ping Gateway (ex:192.168.1.1)。
3.ping DNS (ex:168.95.1.1)。
4.ping 外網 (ex:http://www.google.com.tw/)。
按照這個流程,可以查出網路大概是哪一段沒有連到,以下是一個 ping 的範例。
//建立 Ping 物件。 System.Net.NetworkInformation.Ping oPing = new System.Net.NetworkInformation.Ping(); //設定要測試連線的 IP 與 連線逾時。 System.Net.NetworkInformation.PingReply oPingReply = oPing.Send("168.95.1.1", 5000); //判斷是否連線。 if(oPingReply.Status==System.Net.NetworkInformation.IPStatus.Success) { MessageBox.Show("網路連線正常!"); } else { MessageBox.Show("網路連線異常!"); }
若有更好或是有那裡不完善的地方請指教。
<<後記>>
- TcpConnectionInformation 類別
- http://www.dotblogs.com.tw/chou/archive/2009/04/19/8053.aspx
- stackoverflow.com/questions/520347/c-how-do-i-check-for-a-network-connection
- riteshk.blogspot.com/2007/02/check-network-connection-status-using.html
三小俠 小弟獻醜,歡迎指教