Função NtRecoverEnlistment (wdm.h)
A rotina de 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 de um objeto de inscrição obtido por uma chamada anterior para ZwCreateEnlistment ou ZwOpenEnlistment. O identificador deve ter acesso ENLISTMENT_RECOVER 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.
Valor de retorno
ZwRecoverEnlistment 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 |
---|---|
|
O identificador especificado não é um identificador para um objeto de inscrição. |
|
O identificador de 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 um ResourceManagerNotification rotina de retorno de chamada. |
|
O chamador não tem acesso apropriado ao objeto de inscrição. |
A rotina pode retornar outros valores NTSTATUS .
Observações
Depois que um gerenciador de recursos chama ZwRecoverEnlistment, a KTM entrega um TRANSACTION_NOTIFY_COMMIT, TRANSACTION_NOTIFY_ROLLBACK ou TRANSACTION_NOTIFY_INDOUBT de notificação 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 Handling Recovery Operations.
NtRecoverEnlistment e ZwRecoverEnlistment 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, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
regras de conformidade de DDI | HwStorPortProhibitedDIs, PowerIrpDDis |
Consulte também
usando versões Nt e Zw das rotinas de serviços do sistema nativo