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

指向Microsoft Windows SDK文档中定义的 PROPSPEC 结构数组的第一个元素的指针) (指示要为其设置有效值和访问标志的属性。

[in] pwpi

指向包含要写入的属性值的 WIA_PROPERTY_INFO 结构数组的第一个元素的指针。

返回值

成功后,函数返回S_OK。 如果函数失败,它将返回标准 COM 错误或Windows SDK文档) 中所述 (WIA_ERROR_XXX错误之一。

注解

微型驱动程序应使用此函数来初始化简单属性组。 属性组可以是位集、值范围或值列表。 支持的简单类型(按属性分组)如下所示。

属性 支持的类型
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

微型驱动程序应使用 wiasSetPropertyAttributes 函数初始化复杂属性。

微型驱动程序可以在不随时间变化的属性上设置WIA_PROP_CACHEABLE标志。 通过在属性上设置此标志,微型驱动程序指示 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)
Library Wiaservc.lib
DLL Wiaservc.dll

另请参阅

WIA_PROPERTY_INFO

wiasSetItemPropNames

wiasSetPropertyAttributes