WMI技術的應用 (轉)
管理規範 (WMI) 是可伸縮的管理結構,它採用一個統一的、基於標準的、可擴充套件的面向介面。WMI 為您提供與資訊和基礎 WMI 互動的標準方法。WMI 主要由系統管理應用開發人員和管理員用來訪問和管理資訊。
WMI 可用於生成組織和管理系統資訊的工具,使管理員或系統管理人員能夠更密切地監視系統活動。例如,可以使用 WMI 開發一個應用程式,用於在 崩潰時呼叫管理員。
>將 WMI 與 一起使用
WMI 提供了大量的規範以便為許多高階應用程式(例如, 、Microsoft SERVER 和 Microsoft Internet 資訊服務 (IIS))實現幾乎任何管理任務。管理員可以下列任務:
- 監視應用程式的執行狀況。
- 檢測瓶頸或故障。
- 管理和應用程式。
- 查詢應用程式資料(使用物件關係的遍歷和查詢)。
- 執行無縫的本地或管理操作。
WMI 結構由以下三層組成:
- 客戶端
使用 WMI 執行操作(例如,讀取管理詳細資訊、配置系統和預訂事件)的。
- 物件管理器
提供程式與客戶端之間的中間裝置,它提供一些關鍵服務,如標準事件釋出和預訂、事件篩選、查詢引擎等。
- 提供程式
軟體元件,它們捕獲實時資料並將其返回到客戶端應用程式,處理來自客戶端的方法並將客戶端連結到所管理的基礎結構。
透過定義完善的架構向客戶端和應用程式無縫地提供了資料和事件以及配置系統的能力。在 .NET 框架中,System.Management 名稱空間提供了用於遍歷 WMI 架構的公共類。
除了 .NET 框架,還需要在上 WMI 才能使用該名稱空間中的管理功能。如果使用的是 Windows Millennium Edition、 或 ,那麼已經安裝了 WMI。否則,將需要從 MSDN WMI。
用 System.Management 訪問管理資訊
System.Management 名稱空間是 .NET 框架中的 WMI 名稱空間。此名稱空間包括下列支援 WMI 操作的第一級類物件:
- Management 或 ManagementClass:分別為單個管理物件或類。
- ManagementObjectSearcher:用於根據指定的查詢或列舉檢索 ManagementObject 或 ManagementClass 物件的集合。
- ManagementEventWatcher:用於預訂來自 WMI 的事件通知。
- ManagementQuery:用作所有查詢類的基礎。
System.Management 類的使用編碼範例對 .NET 框架環境很適合,並且 WMI 在任何適當的時候均使用標準基框架。例如,WMI 廣泛利用 .NET 集合類並使用推薦的編碼,如 .NET 非同步操作的“委託”模式。因此,使用 .NET 框架的開發人員可以使用他們的當前技能訪問有關計算機或應用程式的管理資訊。
請參見
/html/cpconmanagingapplicationsusingwmi.htm">使用 WMI 管理應用程式 | | | | 執行管理物件的方法 | |
獲取序列號程式碼
string cpuInfo = "";//cpu序列號
ManagementClass cimobject = new ManagementClass("_Processor");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach(ManagementObject mo in moc)
{
cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
Console.WriteLine(cpuInfo);
Console.ReadLine();
}
獲取地址
using System.Management;
...
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach(ManagementObject mo in moc)
{
if((bool)mo["IPEnabled"] == true)
Console.WriteLine("MAC addresst{0}", mo["MacAddress"].ToString());
mo.Dispose();
}
}
獲取ID
String HDid;
ManagementClass cimobject = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach(ManagementObject mo in moc)
{
HDid = (string)mo.Properties["Model"].Value;
MessageBox.Show(HDid );
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-993395/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 規避技術: WMI
- Embedding技術與應用(3):Embeddings技術的實踐應用
- 玩轉iOS開發:裝逼技術RunTime的應用(一)iOS
- 企業應用的轉折點:記憶體計算技術記憶體
- LoadRunner關聯技術的應用
- WMI 的攻擊,防禦與取證分析技術之攻擊篇
- WMI 的攻擊,防禦與取證分析技術之防禦篇
- 【轉】阿里技術專家詳解DDD-應用架構阿里應用架構
- 分析技術在PMP中的應用
- 分散式賬本技術的應用分散式
- AI技術在基於風險測試模式轉型中的應用AI模式
- 智慧客流統計的新技術應用
- VMware的雲原生應用技術揭祕
- 【主流技術】Mybatis Plus的理解與應用MyBatis
- Delphi 技術的優缺點與應用
- 後 App 時代的輕應用技術APP
- 分散式賬本技術的應用(二)分散式
- 區塊鏈技術與應用:未來的一場技術革命區塊鏈
- 【應用技術】AM335x串列埠技術分析串列埠
- 傳統軟體應用技術的價值轉換率越來越低
- NLPIR技術運用知識圖譜技術應用於智慧金融
- 進階 Redis 技術與應用Redis
- 人臉識別技術應用
- 音影片技術原理及應用
- 資料加密新技術-實時雲渲染技術應用加密
- PDM技術的基本功能與應用
- 身份證識別技術的持續應用
- VMware Bitfusion GPU共享技術的應用場景GPU
- Mock技術在測試領域的應用Mock
- 大資料技術在電商的應用大資料
- MACD技術的高階應用--MACD與波浪Mac
- IOC技術在前端專案中的應用前端
- 技術路線應該會的技術
- Linux應用領域有哪些?linux應用技術學習Linux
- 大資料技術原理與應用大資料
- 區塊鏈技術入門應用區塊鏈
- SpEL應用實戰|得物技術
- 超詳細Maven技術應用指南Maven
- LUKS加密卷應用技術簡介加密