NtRecoverTransactionManager 함수(wdm.h)

ZwRecoverTransactionManager 루틴은 로그 스트림에 있는 복구 정보에서 트랜잭션 관리자 개체(모든 트랜잭션, 인리스트먼트 및 리소스 관리자 포함)의 상태를 다시 구성합니다.

구문

__kernel_entry NTSYSCALLAPI NTSTATUS NtRecoverTransactionManager(
  [in] HANDLE TransactionManagerHandle
);

매개 변수

[in] TransactionManagerHandle

ZwCreateTransactionManager 또는 ZwOpenTransactionManager에 대한 이전 호출에서 가져온 트랜잭션 관리자 개체에 대한 핸들입니다. 핸들에는 개체에 대한 TRANSACTIONMANAGER_RECOVER 액세스 권한이 있어야 합니다.

반환 값

ZwRecoverTransactionManager 는 작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 이 루틴이 다음 값 중 하나를 반환할 수 있습니다.

반환 코드 설명
STATUS_OBJECT_TYPE_MISMATCH
지정된 핸들이 트랜잭션 관리자 개체에 대한 핸들이 아닙니다.
STATUS_INVALID_HANDLE
개체 핸들이 잘못되었습니다.
STATUS_ACCESS_DENIED
호출자에게 트랜잭션 관리자 개체에 대한 적절한 액세스 권한이 없습니다.
STATUS_TM_VOLATILE
트랜잭션 관리자 개체는 일시적이므로 트랜잭션을 복구할 수 없습니다.
STATUS_UNSUCCESSFUL
트랜잭션 관리자 개체가 복구를 허용하는 상태가 아닙니다.
 

루틴은 다른 NTSTATUS 값을 반환할 수 있습니다.

설명

ZwRecoverTransactionManager 루틴은 KTM이 만든 마지막 다시 시작 영역에서 시작하여 스트림의 끝에서 끝나는 개체의 로그 스트림에 있는 복구 정보에서 모든 트랜잭션, 인리스트먼트 및 리소스 관리자를 포함한 트랜잭션 관리자 개체의 상태를 다시 구성하려고 합니다.

특정 가상 시간까지 복구하려면 ZwRecoverTransactionManager 대신 ZwRollforwardTransactionManager 루틴 사용합니다.

TPS 구성 요소는 ZwCreateTransactionManager 또는 ZwOpenTransactionManager를 호출한 후 ZwRecoverTransactionManager를 호출해야 합니다.

복구 작업에 대한 자세한 내용은 복구 작업 처리를 참조하세요.

NtRecoverTransactionManagerZwRecoverTransactionManager 는 동일한 Windows 네이티브 시스템 서비스 루틴의 두 버전입니다.

커널 모드 드라이버에서 호출하는 경우 Windows 네이티브 시스템 서비스 루틴의 NtXxxZwXxx 버전은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. 루틴의 NtXxx 버전과 ZwXxx 버전 간의 관계에 대한 자세한 내용은 네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 운영 체제 버전에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs, PowerIrpDDis

추가 정보

TmRecoverTransactionManager

네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRollforwardTransactionManager