Compartir a través de


Función MsiGetProductInfoA (msi.h)

La función MsiGetProductInfo devuelve información del producto para los productos publicados e instalados.

Sintaxis

UINT MsiGetProductInfoA(
  [in]      LPCSTR  szProduct,
  [in]      LPCSTR  szAttribute,
  [out]     LPSTR   lpValueBuf,
  [in, out] LPDWORD pcchValueBuf
);

Parámetros

[in] szProduct

Especifica el código del producto para el producto.

[in] szAttribute

Especifica la propiedad que se va a recuperar.

Se garantiza que propiedades necesarias estén disponibles, pero otras propiedades solo están disponibles si se establece esa propiedad. Para obtener más información, vea Propiedades. Las propiedades de la lista siguiente solo se pueden recuperar de las aplicaciones instaladas.

Propiedad Significado
INSTALLPROPERTY_HELPLINK
Vínculo de soporte técnico. Para obtener más información, consulte la propiedad ARPHELPLINK.
INSTALLPROPERTY_HELPTELEPHONE
Teléfono de soporte técnico. Para obtener más información, consulte la propiedad ARPHELPTELEPHONE.
INSTALLPROPERTY_INSTALLDATE
La última vez que este producto recibió el servicio. El valor de esta propiedad se reemplaza cada vez que se aplica o quita un parche del producto o se usa la opción /v Command-Line para reparar el producto. Si el producto no ha recibido reparaciones o revisiones, esta propiedad contiene la hora en que se instaló este producto en este equipo.
INSTALLPROPERTY_INSTALLEDLANGUAGE
Idioma instalado.

Windows Installer 4.5 y versiones anteriores: no se admite .

INSTALLPROPERTY_INSTALLEDPRODUCTNAME
Nombre del producto instalado. Para obtener más información, consulte la propiedad ProductName.
INSTALLPROPERTY_INSTALLLOCATION
Ubicación de instalación. Para obtener más información, consulte la propiedad ARPINSTALLLOCATION.
INSTALLPROPERTY_INSTALLSOURCE
Origen de la instalación. Para obtener más información, consulte la propiedad sourceDir de .
INSTALLPROPERTY_LOCALPACKAGE
Paquete almacenado en caché local.
INSTALLPROPERTY_PUBLISHER
Editor. Para obtener más información, consulte la propiedad fabricante de .
INSTALLPROPERTY_URLINFOABOUT
Información de dirección URL. Para obtener más información, consulte la propiedad ARPURLINFOABOUT.
INSTALLPROPERTY_URLUPDATEINFO
Información de actualización de direcciones URL. Para obtener más información, consulte la propiedad ARPURLUPDATEINFO.
INSTALLPROPERTY_VERSIONMINOR
Versión secundaria del producto derivada de la propiedad ProductVersion.
INSTALLPROPERTY_VERSIONMAJOR
Versión principal del producto derivada de la propiedad ProductVersion.
INSTALLPROPERTY_VERSIONSTRING
Versión del producto. Para obtener más información, consulte la propiedad ProductVersion.
 

Para recuperar el identificador de producto, el propietario registrado o la empresa registrada de las aplicaciones instaladas, establezca szProperty en uno de los siguientes valores de cadena de texto.

Valor Descripción
Productid Identificador del producto para el producto. Para obtener más información, consulte la propiedad productID de .
RegCompany La empresa registrada para usar este producto.
RegOwner Propietario registrado para usar este producto.
 

Para recuperar el tipo de instancia del producto, establezca szProperty en el siguiente valor. Esta propiedad está disponible para productos anunciados o instalados.

Valor Descripción
InstanceType Un valor que falta o un valor de 0 (cero) indica una instalación normal del producto. Un valor de 1 (uno) indica un producto instalado mediante una transformación de instancia múltiple y la propiedad MSINEWINSTANCE. Disponible con el instalador que ejecuta Windows Server 2003 o Windows XP con SP1. Para obtener más información, consulte instalación de varias instancias de productos y revisiones.
 

Las propiedades anunciadas de la lista siguiente se pueden recuperar de las aplicaciones que se anuncian o instalan.

Propiedad Descripción
INSTALLPROPERTY_TRANSFORMS Transforma.
INSTALLPROPERTY_LANGUAGE Idioma del producto.
INSTALLPROPERTY_PRODUCTNAME Nombre de producto legible para personas. Para obtener más información, consulte la propiedad ProductName.
INSTALLPROPERTY_ASSIGNMENTTYPE Es igual a 0 (cero) si el producto se anuncia o instala por usuario.

Es igual a 1 (uno) si el producto se anuncia o instala por máquina para todos los usuarios.

INSTALLPROPERTY_PACKAGECODE Identificador del paquete desde el que se instaló este producto. Para obtener más información, vea códigos de paquete.
INSTALLPROPERTY_VERSION Versión del producto derivada de la propiedad ProductVersion de .
INSTALLPROPERTY_PRODUCTICON Icono principal del paquete. Para obtener más información, consulte la propiedad ARPPRODUCTICON.
INSTALLPROPERTY_PACKAGENAME Nombre del paquete de instalación original.
INSTALLPROPERTY_AUTHORIZED_LUA_APP Un valor de uno (1) indica un producto que los no administradores pueden atender mediante la aplicación de revisiones de Control de cuentas de usuario (UAC). Un valor que falta o un valor de 0 (cero) indica que la aplicación de revisiones con privilegios mínimos no está habilitada. Disponible en Windows Installer 3.0 o posterior.

[out] lpValueBuf

Puntero a un búfer que recibe el valor de propiedad. Este parámetro puede ser NULL.

[in, out] pcchValueBuf

Puntero a una variable que especifica el tamaño, en caracteres, del búfer al que apunta el parámetro lpValueBuf. En la entrada, este es el tamaño completo del búfer, incluido un espacio para un carácter nulo de terminación. Si el búfer pasado es demasiado pequeño, el recuento devuelto no incluye el carácter nulo de terminación.

Si lpValueBuf es null, pcchValueBuf puede ser null. En este caso, la función comprueba que la propiedad está registrada correctamente con el producto.

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_SUCCESS
La función se completó correctamente.
ERROR_UNKNOWN_PRODUCT
El producto no se invierte o se desinstala.
ERROR_UNKNOWN_PROPERTY
La propiedad no se reconoce.
Nota La función msiGetProductInfo devuelve ERROR_UNKNOWN_PROPERTY si la aplicación que se consulta se anuncia y no está instalada.
 

Observaciones

Cuando la función MsiGetProductInfo devuelve, el parámetro pcchValueBuf contiene la longitud de la cadena almacenada en el búfer. El recuento devuelto no incluye el carácter nulo de terminación. Si el búfer no es lo suficientemente grande, msiGetProductInfo devuelve ERROR_MORE_DATA y pcchValueBuf contiene el tamaño de la cadena, en caracteres, sin contar el carácter NULL.

MsiGetProductInfo (INSTALLPROPERTY_LOCALPACKAGE) no devuelve necesariamente una ruta de acceso al paquete almacenado en caché. El paquete almacenado en caché solo es para uso interno. Las instalaciones en modo de mantenimiento deben invocarse a través de las funciones MsiConfigureFeature, MsiConfigureProducto funciones msiConfigureProductEx.

Si intenta usar msiGetProductInfo para consultar un producto anunciado para una propiedad que solo está disponible para los productos instalados, la función devuelve ERROR_UNKNOWN_PROPERTY. Por ejemplo, si la aplicación se anuncia y no está instalada, una consulta para la propiedad INSTALLPROPERTY_INSTALLLOCATION devuelve un error de ERROR_UNKNOWN_PROPERTY.

Nota

El encabezado msi.h define MsiGetProductInfo 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. 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 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

determinar el contexto de instalación

no compatibles con Windows Installer 2.0 y versiones anteriores

funciones de estado del sistema de