Funzione MsiBeginTransactionA (msi.h)

La funzione MsiBeginTransaction avvia l'elaborazione delle transazioni di un'installazione a più pacchetti e restituisce un identificatore per la transazione. La funzione MsiEndTransaction termina la transazione.

Windows Installer 4.0 e versioni precedenti: Non supportato. Questa funzione è disponibile a partire da Windows Installer 4.5.

Sintassi

UINT MsiBeginTransactionA(
  [in]  LPCSTR    szName,
  [in]  DWORD     dwTransactionAttributes,
  [out] MSIHANDLE *phTransactionHandle,
  [out] HANDLE    *phChangeOfOwnerEvent
);

Parametri

[in] szName

Nome dell'installazione a più pacchetti.

[in] dwTransactionAttributes

Attributi dell'installazione di più pacchetti.

Valore Significato
0
Quando si imposta 0 o nessun valore, Windows Installer chiude l'interfaccia utente dall'installazione precedente.
MSITRANSACTION_CHAIN_EMBEDDEDUI
Impostare questo attributo per richiedere che Windows Installer non arresti l'interfaccia utente incorporata fino al completamento della transazione.

[out] phTransactionHandle

L'ID transazione è un valore MSIHANDLE che identifica la transazione. Un solo processo può essere proprietario di una transazione alla volta.

[out] phChangeOfOwnerEvent

Questo parametro restituisce un handle a un evento impostato quando la funzione MsiJoinTransaction modifica il proprietario della transazione in un nuovo proprietario. Il proprietario corrente può usarlo per determinare quando la proprietà della transazione è stata modificata. Se si lascia una transazione senza un proprietario, verrà eseguito il rollback della transazione.

Valore restituito

La funzione MsiBeginTransaction restituisce i valori seguenti.

Valore Significato
ERROR_INSTALL_SERVICE_FAILURE
Impossibile accedere al servizio di installazione. Questa funzione richiede il servizio Windows Installer.
ERROR_INSTALL_ALREADY_RUNNING
È possibile aprire una sola transazione in un sistema alla volta. La funzione restituisce questo errore se viene chiamato mentre è in esecuzione un'altra transazione.
ERROR_INVALID_PARAMETER
Alla funzione viene passato un parametro non valido.
ERROR_ROLLBACK_DISABLED

Le installazioni di rollback sono state disabilitate dalla proprietà DISABLEROLLBACK o dal criterio DisableRollback .

Commenti

Nota

L'intestazione msi.h definisce MsiBeginTransaction come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di 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.5 in Windows Vista, Windows XP, Windows Server 2003 e Windows Server 2008. Per informazioni sul Service Pack minimo di Windows richiesto da una versione di Windows Installer, vedere Windows Installer Run-Time Requirements .See the Windows Installer requirements for information about the minimum Windows Service Pack that is required by a Windows Installer version.
Piattaforma di destinazione Windows
Intestazione msi.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Installazioni di più pacchetti