Función MsiEnumComponentsA (msi.h)
La función MsiEnumComponents enumera los componentes instalados para todos los productos. Esta función recupera un código de componente cada vez que se llama.
Sintaxis
UINT MsiEnumComponentsA(
[in] DWORD iComponentIndex,
[out] LPSTR lpComponentBuf
);
Parámetros
[in] iComponentIndex
Especifica el índice del componente que se va a recuperar. Este parámetro debe ser cero para la primera llamada a la función MsiEnumComponents y, a continuación, incrementarse para las llamadas posteriores. Dado que los componentes no están ordenados, ningún nuevo componente tiene un índice arbitrario. lo que significa que la función puede devolver componentes en cualquier orden.
[out] lpComponentBuf
Puntero a un búfer que recibe el código del componente. Este búfer debe tener 39 caracteres de longitud. Los primeros 38 caracteres son para el GUID y el último carácter es para el carácter nulo de terminación.
Valor devuelto
Valor | Significado |
---|---|
|
Los datos de configuración están dañados. |
|
Se pasó un parámetro no válido a la función. |
|
No hay componentes que se devuelvan. |
|
El sistema no tiene suficiente memoria para completar la operación. Disponible con Windows Server 2003. |
|
Se ha enumerado un valor. |
Comentarios
Para enumerar los componentes, una aplicación debe llamar inicialmente a la función MsiEnumComponents con el parámetro iComponentIndex establecido en cero. A continuación, la aplicación debe incrementar el parámetro iComponentIndex y llamar a MsiEnumComponents hasta que no haya más componentes (es decir, hasta que la función devuelva ERROR_NO_MORE_ITEMS).
Al realizar varias llamadas a MsiEnumComponents para enumerar todos los componentes del producto, cada llamada debe realizarse desde el mismo subproceso.
Nota
El encabezado msi.h define MsiEnumComponents 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 |