IWiaPropertyStorage::GetPropertyAttributes 方法 (wia_xp.h)
IWiaPropertyStorage::GetPropertyAttributes 方法會擷取指定屬性集的訪問許可權和法律價值資訊。
語法
HRESULT GetPropertyAttributes(
[in] ULONG cpspec,
[in] PROPSPEC [] rgpspec,
[out] ULONG [] rgflags,
[out] PROPVARIANT [] rgpropvar
);
參數
[in] cpspec
類型: ULONG
指定要查詢的屬性屬性數目。
[in] rgpspec
類型: PROPSPEC[]
指定 裝置資訊屬性常數的陣列。 陣列中的每個常數都會選取要查詢的屬性。
[out] rgflags
類型: ULONG[]
陣列,會接收 rgpspec 陣列中所指定之每個屬性的屬性屬性描述元。 陣列中的每個元素都是結合位 OR 運算的一或多個描述元值。
[out] rgpropvar
類型: PROPVARIANT[]
陣列,會接收 pPROPSPEC 陣列中所指定之每個屬性的屬性屬性描述元。 如需詳細資訊,請參閱 PROPVARIANT。
傳回值
類型: HRESULT
此方法會傳回下列其中一個值或標準 COM 錯誤碼:
傳回值 | 意義 |
---|---|
S_OK | 這個方法成功。 |
S_FALSE | 指定的屬性名稱不存在。 未擷取任何屬性。 |
STG_E_ACCESSDENIED | 應用程式無法存取屬性數據流,或數據流可能已經開啟。 |
STG_E_INSUFFICIENTMEMORY | 記憶體不足,無法完成此作業。 |
ERROR_NOT_SUPPORTED | 不支援屬性類型。 |
STG_E_INVALIDPARAMETER | 一或多個參數無效。 一或多個 PROPSPEC 結構包含無效的數據。 |
STG_E_INVALIDPOINTER | 傳遞至這個方法的一或多個指標無效。 |
ERROR_NO_UNICODE_TRANSLATION | 從 Unicode 轉譯為 ANSI 或 ANSI 到 Unicode 失敗。 |
備註
這個方法會擷取屬性訪問許可權和有效的屬性值。 訪問許可權報告屬性是可讀取的、可寫入的,還是兩者。 有效的屬性值會指定為值範圍、值清單或一組旗標值。 如需詳細資訊,請參閱 屬性屬性。
如果屬性訪問許可權旗標已設定 WIA_PROP_NONE 位,則此屬性沒有可用的法律值資訊。 具有二進位數據類型的唯讀屬性和屬性是屬性的範例,這些屬性會設定 WIA_PROP_NONE 位。
如果屬性具有有效的值範圍,則可以在此方法完成時透過 rgpropvar 參數來判斷。 ppvValidValues 參數會指定 PROPVARIANT 結構的陣列。
例如,如果屬性範圍指定為 VT_VECTOR |VT_UI4,可以透過結構成員擷取範圍資訊
rgpropvar[n].caul.pElems[range_specifier]
其中 n 是已檢查且 range_specifier 屬性的索引編號是下列其中一項:
範圍規範 | 意義 |
---|---|
WIA_RANGE_MAX | 可以設定屬性的最大值。 |
WIA_RANGE_MIN | 可以設定屬性的最小值。 |
WIA_RANGE_NOM | 一般或預設屬性值。 |
WIA_RANGE_STEP | 屬性值之間的遞增或遞減。 |
如果屬性具有有效值的清單,應用程式會在此方法完成時透過 ppvValidValues 參數來判斷這些值。
例如,如果屬性範圍指定為 VT_VECTOR |VT_UI4,可以透過結構成員擷取有效的屬性值清單
rgpropspecValues[n].caul.pElems[list_specifier]
其中 n 是已檢查且 list_specifier 屬性的索引編號是下列其中一項:
範圍規範 | 意義 |
---|---|
WIA_LIST_COUNT | 排除標準值的清單項目總數。 |
WIA_LIST_NOM | 屬性的名稱值。 |
WIA_LIST_VALUES | 第一個值的索引編號。 |
程式也會使用 ppvValidValues 參數來擷取有效的旗標值。 例如,如果屬性旗標指定為VT_UI4,則可以透過結構成員判斷有效的旗標值
rgpropspec[n].caul.pElems[flag_specifier]
其中 n 是已檢查之屬性的索引編號, flag_specifier 為下列其中一項:
範圍規範 | 意義 |
---|---|
WIA_FLAG_NOM | 屬性的名稱值。 |
WIA_FLAG_NUM_ELEMS | 排除標準值的清單項目總數。 |
WIA_FLAG_VALUES | 設定所有有效旗標位的所有值。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版、Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wia_xp.h (包括 Wia.h) |
程式庫 | Wiaguid.lib |
Dll | Wiaservc.dll |