none
Visual C# 抓取WMI內RSSI問題 RRS feed

  • 問題

  • 各位版大好,最近小弟在做一個Visual C#透過WMI去抓一些WLAN資訊的研究,其中要抓RSSI值出來,

    網路上剛好看到有一篇網路大大分享的文章,其中也是用Visual C#抓WMI 80211資訊出來,以下為提供的程式碼:

         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();
                }
            }
        }

    其中文章特別註明要加入參考 System.Management,最後要RUN此程式時,卻出現以下錯誤訊息:

    System.InvalidOperationException' 的未處理例外狀況發生於 System.Management.dll

    不知道小弟有漏掉了哪邊設定而導致出現此訊息嗎? 謝謝!!

    2015年11月23日 上午 07:37

所有回覆