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 文档中介绍)。

言论

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

属性 支持的类型
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)
Wiaservc.lib
DLL Wiaservc.dll

另请参阅

WIA_PROPERTY_INFO

wiasSetItemPropNames

wiasSetPropertyAttributes