Função MsiBeginTransactionA (msi.h)

A função MsiBeginTransaction inicia o processamento de transações de uma instalação de vários pacotes e retorna um identificador para a transação. A função MsiEndTransaction encerra a transação.

Windows Installer 4.0 e versões anteriores: Sem suporte. Essa função está disponível a partir do Windows Installer 4.5.

Sintaxe

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

Parâmetros

[in] szName

Nome da instalação de vários pacotes.

[in] dwTransactionAttributes

Atributos da instalação de vários pacotes.

Valor Significado
0
Quando 0 ou nenhum valor é definido, o Windows Installer fecha a interface do usuário da instalação anterior.
MSITRANSACTION_CHAIN_EMBEDDEDUI
Defina esse atributo para solicitar que o Windows Installer não desligue a interface do usuário inserida até que a transação seja concluída.

[out] phTransactionHandle

A ID da transação é um valor MSIHANDLE que identifica a transação. Somente um processo pode possuir uma transação por vez.

[out] phChangeOfOwnerEvent

Esse parâmetro retorna um identificador para um evento definido quando a função MsiJoinTransaction altera o proprietário da transação para um novo proprietário. O proprietário atual pode usar isso para determinar quando a propriedade da transação foi alterada. Deixar uma transação sem um proprietário reverterá a transação.

Retornar valor

A função MsiBeginTransaction retorna os valores a seguir.

Valor Significado
ERROR_INSTALL_SERVICE_FAILURE
Não foi possível acessar o serviço de instalação. Essa função requer o serviço Windows Installer.
ERROR_INSTALL_ALREADY_RUNNING
Somente uma transação pode ser aberta em um sistema por vez. A função retornará esse erro se for chamada enquanto outra transação estiver em execução.
ERROR_INVALID_PARAMETER
Um parâmetro inválido é passado para a função .
ERROR_ROLLBACK_DISABLED

Instalações de reversão foram desabilitadas pela propriedade DISABLEROLLBACK ou pela política DisableRollback .

Comentários

Observação

O cabeçalho msi.h define MsiBeginTransaction como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Installer 5.0 no Windows Server 2012, no Windows 8, no Windows Server 2008 R2 ou no Windows 7. Windows Installer 4.5 no Windows Vista, Windows XP, Windows Server 2003 e Windows Server 2008. Confira os Requisitos de tempo de execução do Windows Installer para obter informações sobre o service pack mínimo do Windows exigido por uma versão do Windows Installer.
Plataforma de Destino Windows
Cabeçalho msi.h
Biblioteca Msi.lib
DLL Msi.dll

Confira também

Várias instalações de pacote