Funzione MsiCreateTransformSummaryInfoA (msiquery.h)

La funzione MsiCreateTransformSummaryInfo crea informazioni di riepilogo di una trasformazione esistente per includere condizioni di convalida e errore. L'esecuzione di questa funzione imposta il record di errore, accessibile tramite MsiGetLastErrorRecord.

Sintassi

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

Parametri

[in] hDatabase

Handle per il database contenente le nuove informazioni di riepilogo del database.

[in] hDatabaseReference

Handle al database contenente le informazioni di riepilogo originali.

[in] szTransformFile

Nome della trasformazione in cui vengono aggiunte le informazioni di riepilogo.

[in] iErrorConditions

Le condizioni di errore che devono essere eliminate quando viene applicata la trasformazione. Usare uno o più dei valori seguenti.

Condizione di errore Significato
nessuna
0x00000000
Nessuna delle condizioni seguenti.
MSITRANSFORM_ERROR_ADDEXISTINGROW
0x00000001
Aggiunta di una riga esistente.
MSITRANSFORM_ERROR_DELMISSINGROW
0x00000002
Eliminazione di una riga che non esiste.
MSITRANSFORM_ERROR_ADDEXISTINGTABLE
0x00000004
Aggiunta di una tabella esistente.
MSITRANSFORM_ERROR_DELMISSINGTABLE
0x00000008
Eliminazione di una tabella che non esiste.
MSITRANSFORM_ERROR_UPDATEMISSINGROW
0x00000010
Aggiornamento di una riga che non esiste.
MSITRANSFORM_ERROR_CHANGECODEPAGE
0x00000020
Le pagine codici di trasformazione e database non corrispondono e le relative pagine codici sono neutrali.

[in] iValidation

Specifica le proprietà da convalidare per verificare che la trasformazione possa essere applicata al database. Questo parametro può essere uno o più dei valori seguenti.

Flag di convalida Significato
nessuna
0x00000000
Non convalidare le proprietà.
MSITRANSFORM_VALIDATE_LANGUAGE
0x00000001
La lingua predefinita deve corrispondere al database di base.
MSITRANSFORM_VALIDATE_PRODUCT
0x00000002
Il prodotto deve corrispondere al database di base.
 

Convalidare i flag della versione del prodotto.

Flag di convalida Significato
MSITRANSFORM_VALIDATE_MAJORVERSION
0x00000008
Controllare solo la versione principale.
MSITRANSFORM_VALIDATE_MINORVERSION
0x00000010
Controllare solo le versioni principali e secondarie.
MSITRANSFORM_VALIDATE_UPDATEVERSION
0x00000020
Controllare le versioni principali, secondarie e di aggiornamento.
 

Flag di relazione della versione del prodotto. Nella tabella seguente la versione installata è la versione del pacchetto che viene trasformato e la versione di base è la versione del pacchetto utilizzata per creare la trasformazione.

Flag di convalida Significato
MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION
0x00000040
Versione di base della versione < installata.
MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION
0x00000080
Versione <installata = versione di base.
MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION
0x00000100
Versione installata = versione di base.
MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION
0x00000200
Versione >installata = versione di base.
MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION
0x00000400
Versione di base della versione > installata.
 

Aggiornare i flag di convalida del codice.

Flag di convalida Significato
MSITRANSFORM_VALIDATE_UPGRADECODE
0x00000800
UpgradeCode deve corrispondere al database di base.

Valore restituito

Questa funzione restituisce UINT.

Commenti

La proprietà ProductCode e productVersion deve essere definita nella tabella delle proprietà dei database di base e di riferimento. Se viene usato MSITRANSFORM_VALIDATE_UPGRADECODE, la proprietà UpgradeCode deve essere definita anche in entrambi i database. Se queste condizioni non vengono soddisfatte, MsiCreateTransformSummaryInfo restituisce ERROR_INSTALL_PACKAGE_INVALID.

  • Non usare il punto e virgola per i nomi di file o i percorsi, perché viene usato come delimitatore di elenco per trasformazioni, origini e patch.
  • Questa funzione non può essere chiamata da azioni personalizzate. Una chiamata a questa funzione da un'azione personalizzata causa l'esito negativo della funzione.

Nota

L'intestazione msiquery.h definisce MsiCreateTransformSummaryInfo come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Windows Installer in Windows Server 2003 o Windows XP
Piattaforma di destinazione Windows
Intestazione msiquery.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Trasformazioni di database

Riepilogo informazioni Stream set di proprietà