NtQueryInformationTransactionManager 関数 (wdm.h)

ZwQueryInformationTransactionManager ルーチンは、指定されたトランザクション マネージャー オブジェクトに関する情報を取得します。

構文

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransactionManager(
  [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_INFORMATIONTRANSACTIONMANAGER_LOG_INFORMATIONTRANSACTIONMANAGER_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 ネイティブ システム サービス ルーチンの 2 つのバージョンです。

カーネル モード ドライバーからの呼び出しの場合、Windows ネイティブ システム サービス ルーチンの NtXxx および ZwXxx バージョンは、入力パラメーターを処理および解釈する方法で動作が異なります。 ルーチンの NtXxx バージョンと ZwXxx バージョン間の関係の詳細については、「Using Nt and Zw Versions of the Native System Services Routines」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Vista 以降のオペレーティング システム バージョンで使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 HwStorPortProhibitedDIs、PowerIrpDDis

こちらもご覧ください

TRANSACTIONMANAGER_BASIC_INFORMATION

TRANSACTIONMANAGER_INFORMATION_CLASS

TRANSACTIONMANAGER_LOGPATH_INFORMATION

TRANSACTIONMANAGER_LOG_INFORMATION

Nt および Zw バージョンのネイティブ システム サービス ルーチンの使用

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRecoverTransactionManager

ZwRollforwardTransactionManager