Функция 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, если операция выполнена успешно. В противном случае эта подпрограмма может вернуть одно из следующих значений:
Код возврата | Описание |
---|---|
|
Указанный дескриптор не является дескриптором объекта зачисления. |
|
Недопустимый дескриптор объекта. |
|
Транзакция или ее зачисление не находится в правильном состоянии. |
|
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 |