Compartir a través de


Función MsiEnumFeaturesA (msi.h)

La función MsiEnumFeatures enumera las características publicadas de un producto determinado. Esta función recupera un identificador de característica cada vez que se llama.

Sintaxis

UINT MsiEnumFeaturesA(
  [in]  LPCSTR szProduct,
  [in]  DWORD  iFeatureIndex,
  [out] LPSTR  lpFeatureBuf,
  [out] LPSTR  lpParentBuf
);

Parámetros

[in] szProduct

Cadena terminada en NULL que especifica el código de producto del producto cuyas características se van a enumerar.

[in] iFeatureIndex

Especifica el índice de la característica que se va a recuperar. Este parámetro debe ser cero para la primera llamada a la función MsiEnumFeatures y, a continuación, incrementarse para las llamadas posteriores. Dado que las características no están ordenadas, ninguna característica nueva tiene un índice arbitrario. Esto significa que la función puede devolver características en cualquier orden.

[out] lpFeatureBuf

Puntero a un búfer que recibe el identificador de característica. El tamaño del búfer debe contener un valor de cadena de longitud MAX_FEATURE_CHARS+1. La función devuelve ERROR_MORE_DATA si la longitud del identificador de característica supera MAX_FEATURE_CHARS.

[out] lpParentBuf

Puntero a un búfer que recibe el identificador de característica del elemento primario de la característica. El tamaño del búfer debe contener un valor de cadena de longitud MAX_FEATURE_CHARS+1. Si la longitud del identificador de característica de la característica primaria supera MAX_FEATURE_CHARS, solo los primeros MAX_FEATURE_CHARS caracteres se copian en el búfer.

Valor devuelto

Valor Significado
ERROR_BAD_CONFIGURATION
Los datos de configuración están dañados.
ERROR_INVALID_PARAMETER
Se pasó un parámetro no válido a la función.
ERROR_MORE_DATA
Un búfer es demasiado pequeño para contener los datos solicitados.
ERROR_NO_MORE_ITEMS
No hay características que devolver.
ERROR_SUCCESS
Se ha enumerado un valor.
ERROR_UNKNOWN_PRODUCT
El producto especificado es desconocido.
 
 

Comentarios

Para enumerar las características, una aplicación debe llamar inicialmente a la función MsiEnumFeatures con el parámetro iFeatureIndex establecido en cero. A continuación, la aplicación debe incrementar el parámetro iFeatureIndex y llamar a MsiEnumFeatures hasta que no haya más características (es decir, hasta que la función devuelva ERROR_NO_MORE_ITEMS).

Nota

El encabezado msi.h define MsiEnumFeatures como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Installer 5.0 en Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 en Windows Server 2008 o Windows Vista. Windows Installer en Windows Server 2003 o Windows XP. Consulte Windows Installer para obtener información sobre el Service Pack mínimo de Windows que requiere una versión de Windows Installer.
Plataforma de destino Windows
Encabezado msi.h
Library Msi.lib
Archivo DLL Msi.dll

Consulte también

Funciones de estado del sistema