ZwQueryInformationTransactionManager 함수(wdm.h)

ZwQueryInformationTransactionManager 루틴은 지정된 트랜잭션 관리자 개체에 대한 정보를 검색합니다.

구문

NTSYSCALLAPI NTSTATUS ZwQueryInformationTransactionManager(
  [in]            HANDLE                               TransactionManagerHandle,
  [in]            TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
  [out]           PVOID                                TransactionManagerInformation,
  [in]            ULONG                                TransactionManagerInformationLength,
  [out, optional] PULONG                               ReturnLength
);

매개 변수

[in] TransactionManagerHandle

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

[in] TransactionManagerInformationClass

가져올 정보를 지정하는 TRANSACTIONMANAGER_INFORMATION_CLASS 형식의 열거형 값입니다. 이 값은 다음 중 하나여야 합니다.

  • TransactionManagerBasicInformation
  • TransactionManagerLogInformation
  • TransactionManagerLogPathInformation
열거형의 TransactionManagerOnlineProbeInformation 값은 ZwQueryInformationTransactionManager와 함께 사용되지 않습니다.

[out] TransactionManagerInformation

TransactionManagerInformationClass 매개 변수가 지정하는 정보를 수신하는 호출자가 할당한 버퍼에 대한 포인터입니다. 버퍼의 구조 형식은 TRANSACTIONMANAGER_BASIC_INFORMATION, TRANSACTIONMANAGER_LOG_INFORMATION, TRANSACTIONMANAGER_LOGPATH_INFORMATION 또는 TRANSACTIONMANAGER_RECOVERY_INFORMATION 합니다.

[in] TransactionManagerInformationLength

호출자가 정보를 수신하기 위해 할당한 추가 배열 요소의 길이를 포함하여 TransactionManagerInformation 매개 변수가 가리키는 버퍼의 길이(바이트)입니다.

[out, optional] ReturnLength

KTM이 TransactionManagerInformation 버퍼에 쓰는 정보의 길이(바이트)를 수신하는 호출자 할당 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

반환 값

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

반환 코드 설명
STATUS_INVALID_INFO_CLASS
TransactionManagerInformationClass 매개 변수의 값이 잘못되었습니다.
STATUS_INFO_LENGTH_MISMATCH
TransactionManagerInformationLength 매개 변수로 지정된 버퍼의 길이가 잘못되었습니다.
STATUS_OBJECT_TYPE_MISMATCH
지정된 핸들은 트랜잭션 관리자 개체에 대한 핸들이 아닙니다.
STATUS_INVALID_HANDLE
개체 핸들이 잘못되었습니다.
STATUS_ACCESS_DENIED
호출자에게 트랜잭션 관리자 개체에 대한 적절한 액세스 권한이 없습니다.
STATUS_BUFFER_TOO_SMALL
TransactionManagerInformation 매개 변수로 지정된 버퍼가 너무 작습니다.
 

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

설명

ZwQueryInformationTransactionManager를 사용하는 방법에 대한 자세한 내용은 KTM에서 로그 스트림 사용을 참조하세요.

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

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

요구 사항

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

추가 정보

TRANSACTIONMANAGER_BASIC_INFORMATION

TRANSACTIONMANAGER_INFORMATION_CLASS

TRANSACTIONMANAGER_LOGPATH_INFORMATION

TRANSACTIONMANAGER_LOG_INFORMATION

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

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRecoverTransactionManager

ZwRollforwardTransactionManager