Condividi tramite


Funzione MsiBeginTransactionA (msi.h)

La funzione msiBeginTransaction avvia '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.

Osservazioni

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 non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

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 Requisiti di windows Run-Time.
piattaforma di destinazione Finestre
intestazione msi.h
libreria Msi.lib
dll Msi.dll

Vedere anche

più installazioni di pacchetti