編寫 API 常數的腳本
WMI 會在 中使用數種類型的常數,如果lags 在 WMI Scripting API 中呼叫方法的 參數。
Visual Basic 應用程式可以包含腳本 API 的類型庫 Wbemdisp.tlb。 腳本無法存取類型連結庫中的常數,除非它們使用 <REFERENCE> 或 <OBJECT> 標記,如使用 WMI 腳本類型庫 中所述。 否則,腳本必須使用常數的值。
常數
-
定義安全性驗證層級。
-
定義如何對類別或實例執行寫入作業。
-
定義屬性值的有效 CIM 類型。
-
定義物件比較的設定,並由 SWbemObject.CompareTo_使用。
-
定義當遠端電腦上 WMI 連線失敗時,在呼叫 SWbemLocator.ConnectServer 方法時,做為參數的安全性旗標。
-
定義 WMI 呼叫 文稿 API 可能會傳回的錯誤。
-
定義 SWbemServices.ExecQuery、SWbemServices.ExecQueryAsync、SWbemServices.SubclassesOf和 SWbemServices.InstancesOf所使用的常數。
-
定義安全性模擬層級。 這些常數會與 SWbemSecurity搭配使用。
-
定義 SWbemObjectEx.GetText_要使用的有效物件文字格式。
-
定義許可權。 這些常數會與 SWbemSecurity 搭配使用,以授與某些作業所需的許可權。
-
定義列舉或查詢的深度,以決定呼叫所傳回的物件數目。
-
定義產生的物件文字內容,並由 SWbemObject.GetObjectText_使用。
-
定義逾時常數。 SWbemEventSource.NextEvent會使用此常數。
結合旗標
您可以結合旗標來影響 API 呼叫的多個層面。
例如,若要建立 半同步處理 呼叫,SWbemServices.ExecQuery_ 呼叫中的 iFlags 參數必須包含兩個旗標:WbemFlagReturnImmediately 和 WbemFlagForwardOnly。 WbemFlagReturnImmediately 的值是 16,WbemFlagForwardOnly 的值是 32。 由於無法依名稱存取常數,因此會合併這些旗標的值,產生 iFlags 值為 48。
下列腳本範例顯示呼叫。
On Error Resume Next
For Each obj in GetObject("WinMgmts:").ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE _ LogFile='Application'",,48)
count = count + 1
Next
並非所有旗標都可以合併,因為許多旗標互斥,而且可能會產生無法預測的結果。
相關主題
-
適用於 WMI 的 腳本 API