Поделиться через


функция 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 (определенный в документации по пакету SDK для Microsoft Windows), указывающий свойства, для которых необходимо задать допустимые значения и флаги доступа.

[in] pwpi

Указатель на первый элемент массива WIA_PROPERTY_INFO структур, содержащих значения свойств для записи.

Возвращаемое значение

При успешном выполнении функция возвращает S_OK. Если функция завершается ошибкой, она возвращает стандартную ошибку COM или одну из ошибок WIA_ERROR_XXX (описанную в документации по пакету SDK для Windows).

Замечания

Мини-drivers должны использовать эту функцию для инициализации групп простых свойств. Группы свойств могут быть наборами, диапазонами значений или списками значений. Поддерживаемые простые типы, сгруппированные по атрибуту, приведены ниже.

Атрибуты Поддерживаемые типы
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

Мини-drivers должны инициализировать сложные свойства с помощью функции wiasSetPropertyAttributes.

Мини-driver может задать флаг WIA_PROP_CACHEABLE для свойства, которое не изменяется со временем. Задав этот флаг для свойства, мини-driver указывает, что служба WIA может кэшировать значение свойства. См. документацию по пакету SDK для Windows для списка всех атрибутов свойств.

Важно помнить, что wiasSetItemPropAttribs возвращает HRESULT, а не ЛОГИЧЕСКОЕ значение. Например, если wiasSetItemPropAttribs возвращает значение 0, это значение должно быть интерпретировано как S_OK, а не FALSEи указывает, что все работало должным образом. Если wiasSetItemPropAttribs возвращает S_FALSE HRESULT, это означает, что одно из свойств, которые вы пытаетесь задать, вероятно, не существует в потоке свойств.

Чтобы получить журнал 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