ObjectQuery query = new ObjectQuery("SELECT * FROM MSNdis_80211_ReceivedSignalStrength Where active = true");
            ManagementScope scope = new ManagementScope("root\\wmi");
            ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
            //ManagementClass mc = new ManagementClass("root\\WMI", "MSNdis_80211_BSSIList", null);            //ManagementObjectCollection moc = mc.GetInstances();            foreach (ManagementObject mo in searcher.Get())
            {                string wlanCard = (string)mo["InstanceName"];                Console.WriteLine(wlanCard);                ManagementBaseObject[] bssiList = (ManagementBaseObject[])mo["Ndis80211BSSIList"];                foreach (ManagementBaseObject bssi in bssiList)
                {                    byte[] ssid = (byte[])bssi["Ndis80211SsId"];                    string ssidString = Encoding.ASCII.GetString(ssid);                    Console.WriteLine(" " + ssidString);                }                Console.WriteLine("########################");            }报错找不到,Ndis80211BSSIList是不是有问题?如果有直接的代码更好了!求教高手给支持帮助!

解决方案 »

  1.   

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Management;namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                try
                {
                    string strSSID;                ManagementObjectSearcher mObjSearch = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSNdis_80211_BSSIList");
                    ManagementObjectCollection mObjColl = mObjSearch.Get();
                    ManagementObjectCollection.ManagementObjectEnumerator mObjEnum = mObjColl.GetEnumerator();                mObjEnum.MoveNext();                Console.WriteLine("無線網路介面: " + mObjEnum.Current.Properties["InstanceName"].Value);
                    Console.WriteLine("可用無線網路: " + mObjEnum.Current.Properties["NumberOfItems"].Value);
                    ManagementBaseObject[] objarr = (ManagementBaseObject[])mObjEnum.Current.Properties["Ndis80211BSSIList"].Value;                foreach (ManagementBaseObject queryObj in objarr)
                    {
                        Console.WriteLine("網路名稱 SSID:" + Encoding.ASCII.GetString((byte[])queryObj.Properties["Ndis80211Ssid"].Value));                }
                }
                catch (ManagementException ex)
                {
                    Console.WriteLine("Error:" + ex.Message);
                }
                Console.Read();
            }
        }
    }
      

  2.   


    这个里面走到mObjEnum.MoveNext();时候显示  不受支持!