Compartir a través de


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

Consulte también

IPropertyStorage

IWiaPropertyStorage