從類別取得指定之具名專案的所有詳細數據。
語法
MI_INLINE MI_Result MI_Class_GetElement(
[in] const MI_Class *self,
const MI_Char *name,
[out, optional] MI_Value *value,
[out, optional] MI_Boolean *valueExists,
[out, optional] MI_Type *type,
MI_Char **referenceClass,
[out, optional] MI_QualifierSet *qualifierSet,
[out, optional] MI_Uint32 *flags,
[out, optional] MI_Uint32 *index
);
參數
[in] self
要從中擷取專案之類別物件的指標。
name
要擷取之專案名稱的指標。
[out, optional] value
要接收專案傳回之預設值之變數的指標。 值在類別物件的存留期有效;不需要刪除值。 這是選擇性參數。 如果不需要此資訊,請傳遞此參數的 NULL 。 如果此參數不是 NULL,valueExists 不得為 NULL。 如果 valueExists 的傳回值 MI_FALSE,則沒有預設值。
[out, optional] valueExists
接收傳回布爾值的變數指標,指出指定的專案是否結束預設值。 如果預設值結束時,參數會 MI_TRUE ;否則, MI_FALSE。 如果不需要此資訊,請傳遞此參數的 NULL 。
[out, optional] type
變數的指標,這個變數會接收指定數據類型 之MI_Type 列舉的傳回值。 如果不需要此資訊,請傳遞此參數的 NULL 。
referenceClass
如果專案是強型別參考) ,則為參考 (的類別,如果專案是強型別的內嵌實例) ,則為類別名稱 (。
[out, optional] qualifierSet
要接收傳回之專案限定符集之變數的指標。 這是選擇性參數。 與限定符集相關聯的記憶體有效,直到刪除類別對象為止。 當您完成使用類別限定符集時,請呼叫 MI_Class_Delete 函式來刪除類別物件。 如果不需要此資訊,請傳遞此參數的 NULL 。
[out, optional] flags
要接收所傳回旗標值的變數指標,可描述元素的各個層面。 這是選擇性參數。 傳回的旗標值可以是下列MI_FLAG_* 值的任何組合,但特定群組的互斥旗標除外。
MI_FLAG_ABSTRACT (131072 (0x20000) )
類別旗標,表示類別是抽象的。 只有在與 MI_FLAG_CLASS 旗標搭配使用,而且旗標與 MI_FLAG_TERMINAL 旗標互斥時,才適用這個旗標。
MI_FLAG_ADOPT (2147483648 (0x80000000) )
在 MI_Instance 結構上新增和設定屬性時所使用的屬性旗標,表示實例將採用指標,並負責刪除它。 此旗標與 MI_FLAG_BORROW 旗標互斥。
MI_FLAG_ANY (127 (0x7F) )
用來篩選掉這些 CIM 中繼類型 (限定符範圍) 旗標的位掩碼。
- MI_FLAG_CLASS
- MI_FLAG_METHOD
- MI_FLAG_PROPERTY
- MI_FLAG_PARAMETER
- MI_FLAG_ASSOCIATION
- MI_FLAG_INDICATION
- MI_FLAG_REFERENCE
MI_FLAG_ASSOCIATION (16 (0x10) )
MI_ClassDecl 結構中使用的 CIM 中繼類型,表示類別結構也是關聯類別結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_BORROW (1073741824 (0x40000000) )
在 MI_Instance 結構上新增和設定屬性時所使用的屬性旗標,表示實例不會複製值。 值必須保持有效狀態,直到刪除實例為止。 此旗標與 MI_FLAG_ADOPT 旗標互斥。
MI_FLAG_CLASS (1 (0x1) )
MI_ClassDecl 結構中使用的 CIM 中繼類型,用來表示描述類別的結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_DISABLEOVERRIDE (256 (0x100) )
限定符旗標類別,表示無法覆寫限定符。 此旗標與 MI_FLAG_ENABLEOVERRIDE 旗標互斥。
MI_FLAG_ENABLEOVERRIDE (128 (0x80) )
限定符旗標類別,表示可以覆寫限定符。 此旗標與 MI_FLAG_DISABLEOVERRIDE 旗標互斥。
MI_FLAG_EXPENSIVE (524288 (0x80000) )
屬性旗標,表示屬性成本很高。 提供者不需要提供昂貴的屬性,除非用戶端要求它,不過大部分的引擎和用戶端都不支援這個概念,而且一律會傳回所有屬性。 只有在與 MI_FLAG_PROPERTY 旗標搭配使用時,才適用這個旗標。
MI_FLAG_IN (8192 (0x2000) )
參數旗標,指出 參數的類型為In,並傳遞至方法。 只有在與 MI_FLAG_PARAMETER 旗標搭配使用時,才適用這個旗標。
MI_FLAG_INDICATION (32 (0x20) )
MI_ClassDecl 結構中使用的 CIM 中繼類型,表示類別結構也是指示類別結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_KEY (4096 (0x1000) )
屬性旗標,表示專案為索引鍵屬性。 只有在與 MI_FLAG_PROPERTY 旗標搭配使用時,才適用這個旗標。
MI_FLAG_METHOD (2 (0x2) )
MI_MethodDecl 結構中使用的 CIM 中繼類型,用來表示描述方法的結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_NOT_MODIFIED (33554432 (0x2000000) )
表示屬性未修改的旗標。
MI_FLAG_NULL (536870912 (0x20000000) )
旗標,表示屬性值或方法參數值為 Null。
MI_FLAG_OUT (16384 (0x4000) )
參數旗標,指出參數的類型為 Out,而且會從方法傳回。 只有在與 MI_FLAG_PARAMETER 旗標搭配使用時,才適用這個旗標。
MI_FLAG_PARAMETER (8 (0x8) )
MI_ParameterDecl 結構中使用的 CIM 中繼類型,表示描述參數的結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_PROPERTY (4 (0x4) )
MI_PropertyDecl 結構中使用的 CIM 中繼類型,用來表示描述屬性的結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_READONLY (2097152 (0x200000) )
屬性旗標,表示屬性只能讀取且無法寫入。 只有在與 MI_FLAG_PROPERTY 旗標搭配使用時,才適用這個旗標。
MI_FLAG_REFERENCE (64 (0x40) )
範圍欄位中MI_QualifierDecl結構中使用的 CIM 中繼類型,表示描述其他實例指標的結構。 此旗標與其他 CIM 中繼類型 (限定符範圍) 旗標互斥。
MI_FLAG_REQUIRED (32768 (0x8000) )
參數旗標,表示必須指定參數。 只有在與 MI_FLAG_PARAMETER 旗標搭配使用時,才適用這個旗標。
MI_FLAG_RESTRICTED (512 (0x200) )
限定符類別,指出限定符不會傳播至衍生類別。 限定符只適用於宣告它的類別。 此旗標與 MI_FLAG_TOSUBCLASS 旗標互斥。
MI_FLAG_STATIC (65536 (0x10000) )
旗標,用於方法以指出元素是靜態的,而且不需要指定索引鍵的實例來叫用它。
MI_FLAG_STREAM (1048576 (0x100000) )
旗標,指出方法參數將從提供者串流回用戶端。 只有在與 MI_FLAG_PARAMETER 旗標搭配使用時,才適用這個旗標。
MI_FLAG_TERMINAL (262144 (0x40000) )
類別旗標,表示類別無法衍生自 。 只有在與 MI_FLAG_CLASS 旗標搭配使用,而且旗標與 MI_FLAG_ABSTRACT 旗標互斥時,才適用這個旗標。
MI_FLAG_TOSUBCLASS (1024 (0x400) )
限定符類別,指出類別限定符是由任何子類別自動繼承。 此旗標與 MI_FLAG_RESTRICTED 旗標互斥。
MI_FLAG_TRANSLATABLE (2048 (0x800) )
限定符類別,表示可能有不同的語言與 專案相關聯。 可翻譯的限定符會被處理,讓字串和值可以以不同的語言當地語系化。
MI_FLAG_VERSION (469762048 (0x1C000000) )
基礎結構保留三個位,以處理未來的版本設定變更。
[out, optional] index
要接收 類別內專案索引之變數的指標。 如果不需要此資訊,請傳遞此參數的 NULL 。
傳回值
此函式會傳回MI_INLINE MI_Result。
備註
所有元素資訊都是唯讀的。 傳回的資訊有效,直到刪除類別為止。
規格需求
| 需求 | 值 |
|---|---|
| 最低支援的用戶端 | Windows 8 |
| 最低支援的伺服器 | Windows Server 2012 |
| 目標平台 | Windows |
| 標頭 | mi.h |
| 可轉散發套件 | windows Server 2008 R2 SP1、Windows 7 SP1 和 Windows Server 2008 SP2 上的 Windows Management Framework 3.0 |