星期日, 9月 10, 2006

.NET 2.0 即時偵測到網路的連線狀態

.NET 2.0提供的一個新功能就是NetworkChange 類別 !
在之前要測試網路連線時,最笨的做法是一段時間就去PING一下查看是否還活著~
現在不用那麼麻煩囉!

using System.Net.NetworkInformation;

static void AvailabilityCallback(object sender, EventArgs e)
{
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface n in adapters)
{
MessageBox.Show( n.Name + n.OperationalStatus);
}
}

//找個地方掛上即可!
NetworkChange.NetworkAvailabilityChanged += new NetworkAvailabilityChangedEventHandler(AvailabilityCallback);

而MSDN中的說明如下
當網路介面 (也稱為網路卡或介面卡) 的位址變更時,NetworkChange 類別就會引發 NetworkAddressChanged 事件。
若要讓 NetworkChange 物件在發生 NetworkAddressChanged 事件時呼叫事件處理方法,您就必須使這個方法與 NetworkAddressChangeEventHandler委派產生關聯,並將這個委派加入至這個事件。

自己看的註解..在找到這個類別前.試了WMI的Win32_NetworkAdapter,不過還是無法合用!

0 個意見: