Função wiasSetItemPropAttribs (wiamdef.h)
A função wiasSetItemPropAttribs define os sinalizadores de acesso e os valores válidos para o conjunto de propriedades de um item.
Sintaxe
HRESULT wiasSetItemPropAttribs(
[in] BYTE *pWiasContext,
LONG cPropSpec,
[in] PROPSPEC *pPropSpec,
[in] PWIA_PROPERTY_INFO pwpi
);
Parâmetros
[in] pWiasContext
Ponteiro para um contexto de item WIA.
cPropSpec
Especifica o número de propriedades.
[in] pPropSpec
Ponteiro para o primeiro elemento de uma matriz de estruturas PROPSPEC (definido na documentação do SDK do Microsoft Windows) indicando as propriedades para as quais definir valores válidos e sinalizadores de acesso.
[in] pwpi
Ponteiro para o primeiro elemento de uma matriz de estruturas de WIA_PROPERTY_INFO que contêm os valores de propriedade a serem gravados.
Valor de retorno
Com êxito, a função retorna S_OK. Se a função falhar, ela retornará um erro COM padrão ou um dos erros de WIA_ERROR_XXX (descritos na documentação do SDK do Windows).
Observações
Os minidrivers devem usar essa função para inicializar grupos de propriedades simples. Os grupos de propriedades podem ser conjuntos de bits, intervalos de valores ou listas de valores. Os tipos simples com suporte, agrupados por atributo, são os seguintes.
Atributos | Tipos com suporte |
---|---|
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 |
Os minidrivers devem inicializar propriedades complexas usando a função wiasSetPropertyAttributes.
O minidriver pode definir o sinalizador WIA_PROP_CACHEABLE em uma propriedade que não é alterada ao longo do tempo. Ao definir esse sinalizador em uma propriedade, o minidriver indica que o serviço WIA pode armazenar em cache o valor da propriedade. Consulte a documentação do SDK do Windows para obter uma lista de todos os atributos de propriedade.
É importante lembrar que wiasSetItemPropAttribs retorna um HRESULT, não um BOOLEAN. Por exemplo, se wiasSetItemPropAttribs retornar 0, esse valor deverá ser interpretado como S_OK em vez de FALSE e indicar que tudo funcionou conforme o esperado. Se wiasSetItemPropAttribs retornar a S_FALSE HRESULT, isso indicará que uma das propriedades que você está tentando definir provavelmente não existe no fluxo de propriedades.
Para obter um log de wiadebug desse erro, abra o registro e ative o log wia para avisos e erros. A chave do Registro para isso é: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StillImage\Debug\wiaservc.dll
Defina o valor de "DebugFlags". para 0x00000003
Reinicialize o sistema e repita as etapas necessárias para produzir esse erro. Agora haverá um arquivo chamado "wiadebug.log" no diretório %windir%.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | wiamdef.h (inclua Wiamdef.h) |
biblioteca | Wiaservc.lib |
de DLL | Wiaservc.dll |