程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#基礎知識 >> Visual C#中用WMI編寫網絡程序

Visual C#中用WMI編寫網絡程序

編輯:C#基礎知識

  WMI是Windows Management Instrumentation的簡稱,即:視窗管理規范。在Windows 2000或以後的版本中均安裝得有,NT4.0則需要安裝WMI的核心組件。通過WMI可以獲取遠程計算機的各種數據信息,控制遠程計算機的各種行為,而這就像操作本地機一樣方便、簡單。

  一.WMI簡介

  WMI從根本上說應該為一種服務,並且對於本地不同的用戶,WMI所有的權限也不一樣。計算機超級用戶可以為計算機中的每一個用戶,設定不同的WMI權限。在默認狀態下,超級用戶擁有WMI的一切權限。提供WMI服務是通過程序"WinMgmt.exe"來實現的。可以從"System32\Wbem"目錄中找到這個文件。

  既然是服務,計算機使用者就可以享受這種服務,同樣也可以關閉這種服務。具體的操作是:按順序打開【控制面板】|【管理工具】|【組件服務】。WMI服務在組件服務中的顯示名稱為"Windows Management Instrumentation"。具體如下圖01所示:

  圖01:組件服務窗口

  選中【名稱】欄中"Windows Management Instrumentation",點擊鼠標右鍵,在彈出的菜單中,選擇【屬性】,在【啟動類型】選擇框中選擇"已禁用",然後在單擊【停止】按鈕,這樣本地的WMI服務也就被關閉了。此時所有本地和遠程的WMI調用均為非法。下圖為關閉WMI服務後的界面:

  關閉WMI服務

  計算機的超級用戶在默認狀態下擁有WMI的一切權限,並且可以為本地其他用戶設置WMI權限。具體操作是,按順序打開:【控制面板】|【管理工具】|【計算機管理】。選中【計算機管理】右邊的【服務和應用程序】中的【WMI控件】。具體如圖02所示:

  圖02:【計算機管理】對話框

  點擊鼠標右鍵,在彈出的菜單中,選擇【屬性】。彈出【WMI控件屬性】對話框中,選擇【安全】頁面。具體如圖03所示:

  圖03: 打開WMI安全設置界面

  單擊圖9-4中【安全設置】按鈕,彈出【安全設置Root】對話框,通過其中的【添加】和【刪除】按鈕,可以設定本地有哪些用戶擁有WMI權限,並通過【權限】選擇欄為每一個用戶設置不同的權限,具體如圖04所示:

  圖04:設定本地用戶的WMI權限

  通過上圖,也可以發現計算機超級用戶在默認狀態的WMI權限都是允許的,並且這些權限都是無法刪除的。

  二.Visual C#中操作WMI的類庫簡介

  .Net FrameWork SDK對WMI提供了全面的支持,.Net FrameWork SDK為Visual C#能夠操作WMI提供了一個專門的命名空間"System.Management"。在命名空間"System.Management"中提供了大量用以處理和WMI相關的類、接口和枚舉。

  命名空間"System.Management"中的成員是非常復雜的,由於篇幅所限完全介紹這些成員是不可能的,也是沒有要的。根據我的經驗,認為要了解、掌握在Visual C#中使用WMI,下面六個類應該是學習的重點,分別是ConnectionOptions、ManagementScope、ObjectQuery、ManagementObjectSearcher、ManagementObjectCollection和ManagementObject。下面就簡單介紹一下六個類:

  ·ConnectionOptions類

  ConnectionOptions類主要的功能是為建立的WMI連接提供所需的所有設置。在利用WMI對遠程計算機進行操作的時候,首先要進行WMI連接,WMI連接主要是使用的是ManagementScope 類,成功完成WMI連接就要提供遠程計算機WMI用戶名和口令。ConnectionOptions類可以通過其屬性來提供這些信息。表01是ConnectionOptions類的一些主要屬性及其簡單的說明。

  屬性 說明Authority 獲取或設置將用於驗證指定用戶的權利。Locale 獲取或設置將用於連接操作的區域設置。Password 提供用於WMI連接操作的口令。Username提供用於WMI連接操作的用戶名。

  表01:ConnectionOptions類常用屬性及其說明

  其中最常用的屬性是Password和Username。

  • 首頁
  • 上一頁
  • 1
  • 2
  • 下一頁
  • 尾頁
  • 共2頁
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved