Функция TmRecoverEnlistment (wdm.h)

Подпрограмма TmRecoverEnlistment инициирует операцию восстановления для транзакции, связанной с указанным зачислением.

Синтаксис

NTSTATUS TmRecoverEnlistment(
  [in] PKENLISTMENT Enlistment,
  [in] PVOID        EnlistmentKey
);

Параметры

[in] Enlistment

Указатель на объект зачисления. Компонент может получать этот указатель в качестве входных данных для подпрограммы обратного вызова ResourceManagerNotification . Кроме того, компонент может вызывать ObReferenceObjectByHandle и предоставлять дескриптор объекта, который был предоставлен при предыдущем вызове ZwCreateEnlistment, TmCreateEnlistment или ZwOpenEnlistment .

[in] EnlistmentKey

Указатель на значение ключа зачисления, которое диспетчер ресурсов ранее указал в качестве параметра EnlistmentKey для ZwCreateEnlistment или TmCreateEnlistment. Этот параметр является необязательным и может иметь значение NULL , если диспетчер ресурсов не предоставил ключ зачисления при вызове ZwCreateEnlistment или TmCreateEnlistment.

Возвращаемое значение

TmRecoverEnlistment возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае эта подпрограмма может вернуть одно из следующих значений:

Код возврата Описание
STATUS_OBJECT_TYPE_MISMATCH
Указанный дескриптор не является дескриптором объекта зачисления.
STATUS_INVALID_HANDLE
Недопустимый дескриптор объекта.
STATUS_TRANSACTION_REQUEST_NOT_VALID
Транзакция или ее зачисление не находится в правильном состоянии.
STATUS_PENDING
KTM добавил уведомление о фиксации, откате или сомнительном состоянии в очередь уведомлений диспетчера ресурсов, и диспетчер ресурсов не использует подпрограмму обратного вызова ResourceManagerNotification .
 

Подпрограмма может возвращать другие значения NTSTATUS.

Комментарии

Подпрограмма TmRecoverEnlistment — это версия подпрограммы ZwRecoverEnlistment на основе указателя .

Сведения о том, когда следует использовать подпрограммы KTM TmXxx вместо процедур ZwXxx , см. в разделе Использование подпрограмм TmXxxx.

Дополнительные сведения об операциях восстановления см. в разделе Обработка операций восстановления.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях Windows.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

См. также раздел

ObReferenceObjectByHandle

ResourceManagerNotification

TRANSACTION_NOTIFICATION

TmCreateEnlistment

ZwCreateEnlistment

ZwGetNotificationResourceManager

ZwOpenEnlistment

ZwRecoverEnlistment