共用方式為


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

另請參閱

IPropertyStorage

IWiaPropertyStorage