Функция 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 возвращает 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 |