Función MsiGetComponentPathExW (msi.h)
La función MsiGetComponentPathEx devuelve la ruta de acceso completa a un componente instalado. Si la ruta de acceso de la clave del componente es una clave del Registro, la función devuelve la clave del Registro.
Esta función amplía la función MsiGetComponentPath existente para habilitar las búsquedas de componentes en cuentas de usuario y contextos de instalación.
Sintaxis
INSTALLSTATE MsiGetComponentPathExW(
[in] LPCWSTR szProductCode,
[in] LPCWSTR szComponentCode,
[in, optional] LPCWSTR szUserSid,
[in, optional] MSIINSTALLCONTEXT dwContext,
[out, optional] LPWSTR lpOutPathBuffer,
[in, out, optional] LPDWORD pcchOutPathBuffer
);
Parámetros
[in] szProductCode
Valor de cadena terminada en NULL que especifica el GUID de código de producto de una aplicación. La función obtiene la ruta de acceso de los componentes instalados usados por esta aplicación.
[in] szComponentCode
Valor de cadena terminada en NULL que especifica un GUID de código de componente. La función obtiene la ruta de acceso de un componente instalado que tiene este código de componente.
[in, optional] szUserSid
Valor de cadena terminada en NULL que especifica el identificador de seguridad (SID) para un usuario del sistema. La función obtiene las rutas de acceso de los componentes instalados de las aplicaciones instaladas en las cuentas de usuario identificadas por este SID. La cadena de SID especial s-1-1-0 (Todos) especifica todos los usuarios del sistema. Si este parámetro es NULL, la función obtiene la ruta de acceso de un componente instalado solo para el usuario que ha iniciado sesión actualmente.
[in, optional] dwContext
Marca que especifica el contexto de instalación. La función obtiene las rutas de acceso de los componentes instalados de las aplicaciones instaladas en el contexto de instalación especificado. Este parámetro puede ser una combinación de los siguientes valores.
[out, optional] lpOutPathBuffer
Valor de cadena que recibe la ruta de acceso al componente. Este parámetro puede ser null. Si el componente es una clave del Registro, las raíces del Registro se representan numéricamente. Si se trata de una ruta de acceso de subclave del Registro, hay una barra diagonal inversa al final de la ruta de acceso de la clave. Si se trata de una ruta de acceso de clave de valor del Registro, no hay ninguna barra diagonal inversa al final. Por ejemplo, una ruta de acceso del Registro en un sistema operativo de 32 bits de HKEY_CURRENT_USER\SOFTWARE\Microsoft se devuelve como "01:\SOFTWARE\Microsoft". Las raíces del Registro devueltas en sistemas operativos de 32 bits se definen como se muestra en la tabla siguiente.
Raíz | Significado |
---|---|
|
00 |
|
01 |
|
02 |
|
03 |
[in, out, optional] pcchOutPathBuffer
Puntero a una ubicación que recibe el tamaño del búfer, en TCHAR, al que apunta el parámetro szPathBuf. El valor de esta ubicación debe establecerse en el recuento de TCHAR de la cadena, incluido el carácter nulo de terminación. Si el tamaño del búfer es demasiado pequeño, este parámetro recibe la longitud del valor de cadena sin incluir el carácter nulo de terminación en el recuento.
Valor devuelto
La función msiGetComponentPathEx
Valor | Significado |
---|---|
|
El componente que se solicita está deshabilitado en el equipo. |
|
Los datos de configuración están dañados. |
|
El componente no está instalado. |
|
Uno de los parámetros de función no es válido. |
|
El componente se instala localmente. |
|
El componente se instala para ejecutar desde el origen. |
|
No se puede acceder al origen del componente. |
|
Se desconoce el código del producto o el identificador del componente. |
|
El componente está dañado o parcialmente falta de alguna manera y requiere reparación. |
Observaciones
La función
- INSTALLSTATE_ABSENT
La aplicación no se ha asegurado correctamente de que la característica se instaló llamando a MsiUseFeature y, si es necesario, MsiConfigureFeature.
- INSTALLSTATE_UNKNOWN
La característica no está publicada. La aplicación debe haber determinado esto anteriormente llamando a MsiQueryFeatureState o MsiEnumFeatures. La aplicación realiza estas llamadas mientras se inicializa. Una aplicación solo debe usar características que se conocen como publicadas. Dado que INSTALLSTATE_UNKNOWN debe haber sido devuelto por MsiUseFeature también, no se llamó a MsiUseFeature o su valor devuelto no se ha comprobado correctamente.
Nota
El encabezado msi.h define MsiGetComponentPathEx 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 Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Installer 5.0 en Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Consulte Windows Installer Run-Time Requirements (Requisitos de Windows Installer) para obtener información sobre el Service Pack mínimo de Windows que requiere una versión de Windows Installer. |
de la plataforma de destino de |
Windows |
encabezado de |
msi.h |
biblioteca de |
Msi.lib |
DLL de |
Msi.dll |
Consulte también