共用方式為


wiasSetItemPropAttribs 函式 (wiamdef.h)

wiasSetItemPropAttribs 函式會設定專案屬性集的存取旗標和有效值。

語法

HRESULT wiasSetItemPropAttribs(
  [in] BYTE               *pWiasContext,
       LONG               cPropSpec,
  [in] PROPSPEC           *pPropSpec,
  [in] PWIA_PROPERTY_INFO pwpi
);

參數

[in] pWiasContext

WIA 專案內容的指標。

cPropSpec

指定屬性的數目。

[in] pPropSpec

PROPSPEC 結構陣列之第一個專案的指標(定義於 Microsoft Windows SDK 檔中),指出要設定有效值和存取旗標的屬性。

[in] pwpi

包含要寫入之屬性值之 WIA_PROPERTY_INFO 結構陣列之第一個專案的指標。

傳回值

成功時,函式會傳回S_OK。 如果函式失敗,它會傳回標準 COM 錯誤或其中一個WIA_ERROR_XXX錯誤(如 Windows SDK 檔中所述)。

言論

Minidrivers 應該使用此函式來初始化簡單屬性的群組。 屬性群組可以是位集、值範圍或值清單。 支援的簡單類型,依屬性分組,如下所示。

屬性 支援的類型
WIA_PROP_FLAG VT_UI1、VT_UI2、VT_UI4、VT_UI8、VT_I1、VT_I2、VT_I4、VT_I8
WIA_PROP_RANGE VT_UI1、VT_UI2、VT_UI4、VT_UI8、VT_I1、VT_I2、VT_I4、、VT_I8、VT_R4、VT_R8
WIA_PROP_LIST VT_UI1、VT_UI2、VT_UI4、VT_UI8、VT_I1、VT_I2、VT_I4、VT_I8、VT_R4、VT_R8、VT_BSTR

Minidrivers 應該使用 wiasSetPropertyAttributes 函式來初始化複雜屬性。

minidriver 可以在不會隨著時間變更的屬性上設定WIA_PROP_CACHEABLE旗標。 藉由在屬性上設定此旗標,minidriver 表示 WIA 服務可以快取屬性值。 如需所有屬性屬性的清單,請參閱 Windows SDK 檔。

請務必記住,wiasSetItemPropAttribs 傳回 HRESULT,而不是 BOOLEAN。 例如,如果 wiasSetItemPropAttribs 傳回 0,這個值必須解譯為 S_OK,而不是 FALSE,並指出一切如預期般運作。 如果 wiasSetItemPropAttribs 傳回 HRESULT S_FALSE,這表示您嘗試設定的其中一個屬性可能不存在於屬性數據流中。

若要取得此錯誤的 wiadebug 記錄檔,請開啟登錄,然後開啟警告和錯誤的 WIA 記錄。 此登錄機碼為:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StillImage\Debug\wiaservc.dll

將 「DebugFlags」 的值設定為 0x00000003

重新啟動系統,並重複產生此錯誤所需的步驟。 現在 %windir% 目錄中會有名為 「wiadebug.log」 的檔案。

要求

要求 價值
目標平臺 桌面
標頭 wiamdef.h (包括 Wiamdef.h)
連結庫 Wiaservc.lib
DLL Wiaservc.dll

另請參閱

WIA_PROPERTY_INFO

wiasSetItemPropNames

wiasSetPropertyAttributes