2011-12-21 22 views
3

の有線LAN接続のリストを取得するには、ラップトップの有線LAN接続のリストを実行時に取得したいのですが、Wi-Fiまたは無線LANは必要ありません。C#でWifi(無線)LAN接続を無視するC#

私はネットワークのリストを取得するための様々な方法を使用している: -

ManagementClassを:

ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration"); 
ManagementObjectCollection objMOC = objMC.GetInstances(); 

foreach (ManagementObject objMO in objMOC) 
     { 
      if (!(bool)objMO["ipEnabled"]) 
       continue; 
      this.textBox1.Text += (Convert.ToString(objMO["Description"])) + Environment.NewLine; 
     } 

コードの上には、ネットワークの種類(無線LANまたは有線)に関する情報を与えない

NetworkInterfaceクラス:

foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces()) 

     { 
      this.textBox1.Text += nic.Name.ToString();  

      this.textBox1.Text += "MAC: " + nic.GetPhysicalAddress().ToString(); 

      this.textBox1.Text += "Type: " + nic.NetworkInterfaceType; 
      this.textBox1.Text += "Description: " + nic.Description.ToString(); 
      this.textBox1.Text += "OperationalStatus: " + nic.OperationalStatus.ToString() + ; 
     } 

上記コードは私にリストを与えますイーサネットLANの説明。 でもNetworkInterfaceType無線LAN用のLANは、例えばEhternet、として表示されます。 タイプ:イーサネット 説明:インテル(R)Centrinoの(R)アルティメット-N 6300 AGN - パケットスケジューラミニポート

は私がそこにいるものを区別する方法を意味しません無線または有線ネットワークです。

私も試しましたNativeWifi.WlanClientしかし、クラッシュします。

Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList(0); 
     foreach (Wlan.WlanAvailableNetwork network in networks) 
     { 
      if (network.dot11DefaultCipherAlgorithm == Wlan.Dot11CipherAlgorithm.WEP) 
      { 
       this.textBox1.Text = string.Format("Found WEP network with SSID {0}: ", GetStringForSSID(network.dot11Ssid)) + Environment.NewLine; 
      } 
     } 

いずれかのガイダンスがあります。 ありがとう

+0

ASP.NETで可能ですか?クライアント側で利用可能な無線LANネットワークを取得する方法は? – Ranjith

答えて

3
NetworkInterface[] nics=NetworkInterface.GetAllNetworkInterfaces(); 

foreach(NetworkInterface adapter in nics) 
{ 
    if(adapter.OperationalStatus==OperationalStatus.Up) 
    { 
    if(adapter.NetworkInterfaceType==NetworkInterfaceType.Wireless80211) 
    { 
     Console.WriteLine("Wifi"); 
    } 
    else 
    { 
     Console.WriteLine("do your work"); 
    } 
    } 
} 
関連する問題