Método IWiaPropertyStorage::GetPropertyAttributes (wia_xp.h)
El método IWiaPropertyStorage::GetPropertyAttributes recupera los derechos de acceso y la información de valor legal para un conjunto especificado de propiedades.
Sintaxis
HRESULT GetPropertyAttributes(
[in] ULONG cpspec,
[in] PROPSPEC [] rgpspec,
[out] ULONG [] rgflags,
[out] PROPVARIANT [] rgpropvar
);
Parámetros
[in] cpspec
Tipo: ULONG
Especifica el número de atributos de propiedad que se van a consultar.
[in] rgpspec
Tipo: PROPSPEC[]
Especifica una matriz de constantes de propiedad de información de dispositivo. Cada constante de la matriz selecciona una propiedad que se va a consultar.
[out] rgflags
Tipo: ULONG[]
Matriz que recibe un descriptor de atributo de propiedad para cada propiedad especificada en la matriz rgpspec . Cada elemento de la matriz es uno o varios valores descriptores combinados con una operación OR bit a bit.
[out] rgpropvar
Tipo: PROPVARIANT[]
Matriz que recibe un descriptor de atributo de propiedad para cada propiedad especificada en la matriz pPROPSPEC . Para obtener más información, vea PROPVARIANT.
Valor devuelto
Tipo: HRESULT
Este método devuelve uno de los siguientes valores o un código de error COM estándar:
Valor devuelto | Significado |
---|---|
S_OK | Este método se realizó correctamente. |
S_FALSE | Los nombres de propiedad especificados no existen. No se recuperaron atributos. |
STG_E_ACCESSDENIED | Es posible que la aplicación no tenga acceso a la secuencia de propiedades o que la secuencia ya esté abierta. |
STG_E_INSUFFICIENTMEMORY | no hay suficiente memoria para completar la operación. |
ERROR_NOT_SUPPORTED | No se admite el tipo de propiedad. |
STG_E_INVALIDPARAMETER | Uno o varios parámetros no son válidos. Una o varias de las estructuras PROPSPEC contienen datos no válidos. |
STG_E_INVALIDPOINTER | Uno o varios de los punteros pasados a este método no son válidos. |
ERROR_NO_UNICODE_TRANSLATION | Error de traducción de Unicode a ANSI o ANSI a Unicode. |
Comentarios
Este método recupera los derechos de acceso de propiedad y los valores de propiedad válidos. Los derechos de acceso informan de si la propiedad es legible, grabable o ambas. Los valores de propiedad válidos se especifican como un intervalo de valores, una lista de valores o un grupo de valores de marca. Para obtener más información, vea Atributos de propiedad.
Si la marca de derechos de acceso a la propiedad tiene establecido el bit WIA_PROP_NONE , no hay información de valor legal disponible para esta propiedad. Las propiedades y propiedades de solo lectura con un tipo de datos binario son ejemplos de propiedades que tendrían el conjunto de bits de WIA_PROP_NONE .
Si la propiedad tiene un intervalo de valores válidos, se pueden determinar a través del parámetro rgpropvar tras la finalización de este método. El parámetro ppvValidValues especifica una matriz de estructuras PROPVARIANT .
Por ejemplo, si el intervalo de propiedades se especifica como VT_VECTOR | VT_UI4, la información del intervalo se puede recuperar a través del miembro de estructura.
rgpropvar[n].caul.pElems[range_specifier]
donde n es el número de índice de la propiedad que se inspecciona y range_specifier es uno de los siguientes:
Especificador de rango | Significado |
---|---|
WIA_RANGE_MAX | Valor máximo al que se puede establecer la propiedad. |
WIA_RANGE_MIN | Valor mínimo al que se puede establecer la propiedad. |
WIA_RANGE_NOM | Valor de propiedad normal o predeterminado. |
WIA_RANGE_STEP | Incremente o disminuya entre los valores de propiedad. |
Si la propiedad tiene una lista de valores válidos, las aplicaciones las determinan a través del parámetro ppvValidValues tras la finalización de este método.
Por ejemplo, si el intervalo de propiedades se especifica como VT_VECTOR | VT_UI4, la lista de valores de propiedad válidos se puede recuperar a través del miembro de estructura.
rgpropspecValues[n].caul.pElems[list_specifier]
donde n es el número de índice de la propiedad que se inspecciona y list_specifier es uno de los siguientes:
Especificador de rango | Significado |
---|---|
WIA_LIST_COUNT | Número total de elementos de lista sin incluir el valor nominal. |
WIA_LIST_NOM | Valor nominal de la propiedad . |
WIA_LIST_VALUES | Número de índice del primer valor. |
Los programas también usan el parámetro ppvValidValues para recuperar valores de marca válidos. Por ejemplo, si las marcas de propiedad se especifican como VT_UI4, los valores de marca válidos se pueden determinar a través del miembro de estructura.
rgpropspec[n].caul.pElems[flag_specifier]
donde n es el número de índice de la propiedad que se inspecciona y flag_specifier es uno de los siguientes:
Especificador de rango | Significado |
---|---|
WIA_FLAG_NOM | Valor nominal de la propiedad . |
WIA_FLAG_NUM_ELEMS | Número total de elementos de lista sin incluir el valor nominal. |
WIA_FLAG_VALUES | Todos los valores con todos los bits de marca válidos establecidos. |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wia_xp.h (incluya Wia.h) |
Library | Wiaguid.lib |
Archivo DLL | Wiaservc.dll |