Поделиться через


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

Подпрограмма TmRecoverTransactionManager восстанавливает состояние объекта диспетчера транзакций (включая все транзакции, зачисления и диспетчеры ресурсов) из сведений о восстановлении, которые есть в потоке журнала.

Синтаксис

NTSTATUS TmRecoverTransactionManager(
  [in] PKTM           Tm,
  [in] PLARGE_INTEGER TargetVirtualClock
);

Параметры

[in] Tm

Указатель на объект диспетчера транзакций. Чтобы получить этот указатель, компонент TPS должен вызвать ObReferenceObjectByHandle и предоставить дескриптор объекта, предоставленный предыдущим вызовом ZwCreateTransactionManager или ZwOpenTransactionManager .

[in] TargetVirtualClock

Указатель на значение виртуальных часов. Этот параметр является необязательным и может иметь значение NULL. Дополнительные сведения об этом параметре см. в следующем разделе Примечаний. Для Windows Vista этот параметр должен иметь значение NULL.

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

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

Код возврата Описание
STATUS_NOT_IMPLEMENTED
Для Windows Vista вызывающий объект указал значение, отличное от NULL , для параметра TargetVirtualClock .
STATUS_TM_VOLATILE
Указанный объект диспетчера транзакций не имеет файла журнала, поэтому восстановление недоступно.
STATUS_UNSUCCESSFUL
Указанный объект диспетчера транзакций находится в непредвиденном состоянии.
 

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

Комментарии

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

Вызов TmRecoverTransactionManager со значением параметра TargetVirtualClock , равным NULL , функционально эквивалентен вызову ZwRecoverTransactionManager. Вызов TmRecoverTransactionManager с ненулевым значением параметра TargetVirtualClock функционально эквивалентен вызову ZwRollforwardTransactionManager.

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

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

Требования

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

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

ZwRecoverTransactionManager

ZwRollforwardTransactionManager