Função NtRecoverEnlistment (wdm.h)
A rotina ZwRecoverEnlistment inicia uma operação de recuperação para a transação associada a uma inscrição especificada.
Sintaxe
__kernel_entry NTSYSCALLAPI NTSTATUS NtRecoverEnlistment(
[in] HANDLE EnlistmentHandle,
[in, optional] PVOID EnlistmentKey
);
Parâmetros
[in] EnlistmentHandle
Um identificador para um objeto de inscrição que foi obtido por uma chamada anterior para ZwCreateEnlistment ou ZwOpenEnlistment. O identificador deve ter ENLISTMENT_RECOVER acesso ao objeto .
[in, optional] EnlistmentKey
Um ponteiro para o valor da chave de inscrição que o gerenciador de recursos especificou anteriormente como o parâmetro EnlistmentKey para ZwCreateEnlistment. Esse parâmetro é opcional e pode ser NULL se o gerenciador de recursos não forneceu uma chave de inscrição quando chamou ZwCreateEnlistment.
Retornar valor
ZwRecoverEnlistment retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, essa rotina pode retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
|
O identificador especificado não é um identificador para um objeto de inscrição. |
|
O identificador do objeto é inválido. |
|
A transação ou sua inscrição não está no estado correto. |
|
A KTM adicionou uma notificação de confirmação, reversão ou dúvida à fila de notificação do gerenciador de recursos e o gerenciador de recursos não está usando uma rotina de retorno de chamada ResourceManagerNotification . |
|
O chamador não tem acesso apropriado ao objeto de inscrição. |
A rotina pode retornar outros valores NTSTATUS.
Comentários
Depois que um gerenciador de recursos chama ZwRecoverEnlistment, o KTM entrega uma notificação de TRANSACTION_NOTIFY_COMMIT, TRANSACTION_NOTIFY_ROLLBACK ou TRANSACTION_NOTIFY_INDOUBT para a inscrição. Portanto, a menos que o gerenciador de recursos esteja usando uma rotina de retorno de chamada ResourceManagerNotification , ele deverá chamar imediatamente ZwGetNotificationResourceManager se ZwRecoverEnlistment retornar STATUS_SUCCESS ou STATUS_PENDING.
Para obter mais informações sobre ZwRecoverEnlistment, consulte Manipulando operações de recuperação.
NtRecoverEnlistment e ZwRecoverEnlistment são duas versões da mesma rotina do Windows Native System Services.
Para chamadas de drivers de modo kernel, as versões NtXxx e ZwXxx de uma rotina do Windows Native System Services 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 Using Nt and Zw Versions of the Native System Services Routines.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows Vista e versões posteriores do sistema operacional. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regras de conformidade da DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |
Confira também
Usando versões Nt e Zw das rotinas de serviços do sistema nativo