Función MsiCreateTransformSummaryInfoA (msiquery.h)

La función MsiCreateTransformSummaryInfo crea información de resumen de una transformación existente para incluir condiciones de validación y error. La ejecución de esta función establece el registro de error, al que se puede acceder mediante MsiGetLastErrorRecord.

Sintaxis

UINT MsiCreateTransformSummaryInfoA(
  [in] MSIHANDLE hDatabase,
  [in] MSIHANDLE hDatabaseReference,
  [in] LPCSTR    szTransformFile,
  [in] int       iErrorConditions,
  [in] int       iValidation
);

Parámetros

[in] hDatabase

Identificador de la base de datos que contiene la nueva información de resumen de la base de datos.

[in] hDatabaseReference

Identificador de la base de datos que contiene la información de resumen original.

[in] szTransformFile

Nombre de la transformación a la que se agrega la información de resumen.

[in] iErrorConditions

Condiciones de error que se deben suprimir cuando se aplica la transformación. Use uno o varios de los valores siguientes.

Condición de error Significado
Ninguna
0x00000000
Ninguna de las siguientes condiciones.
MSITRANSFORM_ERROR_ADDEXISTINGROW
0x00000001
Agregar una fila que exista.
MSITRANSFORM_ERROR_DELMISSINGROW
0x00000002
Se elimina una fila que no existe.
MSITRANSFORM_ERROR_ADDEXISTINGTABLE
0x00000004
Agregar una tabla que existe.
MSITRANSFORM_ERROR_DELMISSINGTABLE
0x00000008
Se elimina una tabla que no existe.
MSITRANSFORM_ERROR_UPDATEMISSINGROW
0x00000010
Se actualiza una fila que no existe.
MSITRANSFORM_ERROR_CHANGECODEPAGE
0x00000020
Las páginas de códigos de base de datos y transformación no coinciden y sus páginas de códigos son neutras.

[in] iValidation

Especifica las propiedades que se van a validar para comprobar que la transformación se puede aplicar a la base de datos. Este parámetro puede ser uno o más de los siguientes valores.

Marca de validación Significado
Ninguna
0x00000000
No valide las propiedades.
MSITRANSFORM_VALIDATE_LANGUAGE
0x00000001
El idioma predeterminado debe coincidir con la base de datos base.
MSITRANSFORM_VALIDATE_PRODUCT
0x00000002
El producto debe coincidir con la base de datos base.
 

Valide las marcas de versión del producto.

Marca de validación Significado
MSITRANSFORM_VALIDATE_MAJORVERSION
0x00000008
Comprobar solo la versión principal.
MSITRANSFORM_VALIDATE_MINORVERSION
0x00000010
Comprobar solo las versiones principales y secundarias.
MSITRANSFORM_VALIDATE_UPDATEVERSION
0x00000020
Compruebe las versiones principales, secundarias y actualizadas.
 

Marcas de relación de versión del producto. En la tabla siguiente, la versión instalada es la versión del paquete que se va a transformar y la versión base es la versión del paquete que se usa para crear la transformación.

Marca de validación Significado
MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION
0x00000040
< Versión base instalada.
MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION
0x00000080
<Versión instalada = versión base.
MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION
0x00000100
Versión instalada = versión base.
MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION
0x00000200
>Versión instalada = versión base.
MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION
0x00000400
> Versión base instalada.
 

Actualice las marcas de validación de código.

Marca de validación Significado
MSITRANSFORM_VALIDATE_UPGRADECODE
0x00000800
UpgradeCode debe coincidir con la base de datos base.

Valor devuelto

Esta función devuelve UINT.

Comentarios

La propiedad ProductCode y la propiedad ProductVersion deben definirse en la tabla de propiedades de las bases de datos base y de referencia. Si se usa MSITRANSFORM_VALIDATE_UPGRADECODE, la propiedad UpgradeCode también debe definirse en ambas bases de datos. Si no se cumplen estas condiciones, MsiCreateTransformSummaryInfo devuelve ERROR_INSTALL_PACKAGE_INVALID.

  • No use el punto y coma para los nombres de archivo o las rutas de acceso, ya que se usa como delimitador de lista para transformaciones, orígenes y revisiones.
  • No se puede llamar a esta función desde acciones personalizadas. Una llamada a esta función desde una acción personalizada hace que se produzca un error en la función.

Nota

El encabezado msiquery.h define MsiCreateTransformSummaryInfo 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en 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
Plataforma de destino Windows
Encabezado msiquery.h
Library Msi.lib
Archivo DLL Msi.dll

Consulte también

Transformaciones de base de datos

Conjunto de propiedades de flujo de información de resumen