Partilhar via


Função NtRecoverTransactionManager (wdm.h)

A rotina ZwRecoverTransactionManager reconstrói o estado do objeto do gerenciador de transações (incluindo todas as transações, inscrição e gerenciadores de recursos) das informações de recuperação que estão no fluxo de log.

Sintaxe

__kernel_entry NTSYSCALLAPI NTSTATUS NtRecoverTransactionManager(
  [in] HANDLE TransactionManagerHandle
);

Parâmetros

[in] TransactionManagerHandle

Um identificador para um objeto do gerenciador de transações obtido por uma chamada anterior para ZwCreateTransactionManager ou ZwOpenTransactionManager. O identificador deve ter acesso TRANSACTIONMANAGER_RECOVER ao objeto.

Valor de retorno

ZwRecoverTransactionManager retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, essa rotina poderá retornar um dos seguintes valores:

Código de retorno Descrição
STATUS_OBJECT_TYPE_MISMATCH
O identificador especificado não é um identificador para um objeto do gerenciador de transações.
STATUS_INVALID_HANDLE
Um identificador de objeto é inválido.
STATUS_ACCESS_DENIED
O chamador não tem acesso apropriado ao objeto do gerenciador de transações.
STATUS_TM_VOLATILE
O objeto do gerenciador de transações é volátil e, portanto, suas transações não podem ser recuperadas.
STATUS_UNSUCCESSFUL
O objeto do gerenciador de transações não está em um estado que permite a recuperação.
 

A rotina pode retornar outros valores NTSTATUS .

Observações

A rotina de ZwRecoverTransactionManager tenta reconstruir o estado do objeto do gerenciador de transações, incluindo todas as transações, inscrição e gerenciadores de recursos, das informações de recuperação que estão no fluxo de log do objeto, começando na última área de reinicialização que a KTM criou e terminou no final do fluxo.

Para recuperar até um tempo virtual específico, use a rotina de ZwRollforwardTransactionManager em vez de ZwRecoverTransactionManager.

Seu componente TPS deve chamar ZwRecoverTransactionManager depois de chamar ZwCreateTransactionManager ou ZwOpenTransactionManager.

Para obter mais informações sobre operações de recuperação, consulte Tratando operações de recuperação.

NtRecoverTransactionManager e ZwRecoverTransactionManager são duas versões da mesma rotina dos Serviços de Sistema Nativo do Windows.

Para chamadas de drivers no modo kernel, as versões NtXxx e Zwxxx versões de uma rotina dos Serviços de Sistema Nativo do Windows podem se comportar de forma diferente na maneira como lidam e interpretam parâmetros de entrada. Para obter mais informações sobre a relação entre as versões NtXxx e ZwXxx de uma rotina, consulte Usando versões Nt e Zw das rotinas de serviços do sistema nativo.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Vista e versões posteriores do sistema operacional.
da Plataforma de Destino Universal
cabeçalho wdm.h (include Wdm.h, Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs, PowerIrpDDis

Consulte também

TmRecoverTransactionManager

usando versões Nt e Zw das rotinas de serviços do sistema nativo

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRollforwardTransactionManager