次の方法で共有


ZwQueryInformationTransaction 関数 (wdm.h)

ZwQueryInformationTransaction ルーチンは、指定されたトランザクションに関する情報を取得します。

構文

NTSYSCALLAPI NTSTATUS ZwQueryInformationTransaction(
  [in]            HANDLE                        TransactionHandle,
  [in]            TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
  [out]           PVOID                         TransactionInformation,
  [in]            ULONG                         TransactionInformationLength,
  [out, optional] PULONG                        ReturnLength
);

パラメーター

[in] TransactionHandle

ZwCreateTransaction または ZwOpenTransaction の以前の呼び出しによって取得されたトランザクション オブジェクトへのハンドル。 ハンドルには、 オブジェクトへのTRANSACTION_QUERY_INFORMATIONアクセス権が必要です。

[in] TransactionInformationClass

取得 する情報を指定するTRANSACTION_INFORMATION_CLASS型指定された値。 値は、次のいずれかの値である必要があります。

  • TransactionBasicInformation
  • TransactionPropertiesInformation
  • TransactionEnlistmentInformation
TransactionFullInformation 値は、ZwQueryInformationTransaction では使用されません。

[out] TransactionInformation

TransactionInformationClass パラメーターが指定する情報を受け取る、呼び出し元によって割り当てられたバッファーへのポインター。 バッファーの構造体型は 、TRANSACTION_BASIC_INFORMATIONTRANSACTION_PROPERTIES_INFORMATION、または TRANSACTION_ENLISTMENTS_INFORMATIONである必要があります。

[in] TransactionInformationLength

TransactionInformation パラメーターが指すバッファーの長さ (バイト単位)。 情報を受け取るために呼び出し元が割り当てた追加の配列要素の長さを含みます。

[out, optional] ReturnLength

KTM が TransactionInformation バッファーに書き込む情報の長さをバイト単位で受け取る呼び出し元割り当て変数へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます

戻り値

操作が成功した場合、ZwQueryInformationTransaction はSTATUS_SUCCESSを返します。 それ以外の場合、このルーチンは次のいずれかの値を返す可能性があります。

リターン コード 説明
STATUS_INVALID_INFO_CLASS
TransactionInformationClass パラメーターの値が無効です。
STATUS_INFO_LENGTH_MISMATCH
TransactionInformationLength パラメーターで指定されたバッファーの長さが正しくありません。
STATUS_OBJECT_TYPE_MISMATCH
TransactionHandle パラメーターが指定するハンドルは、トランザクション オブジェクトへのハンドルではありません。
STATUS_INVALID_HANDLE
オブジェクト ハンドルが無効です。
STATUS_ACCESS_DENIED
呼び出し元には、トランザクション オブジェクトへの適切なアクセス権がありません。
STATUS_BUFFER_OVERFLOW
TransactionInformation パラメーターが指定するバッファーが小さすぎます。
 

ルーチンは、他の NTSTATUS 値を返す場合があります。

注釈

ZwQueryInformationTransaction の使用方法の詳細については、「トランザクション クライアントの作成」を参照してください。

NtQueryInformationTransactionZwQueryInformationTransaction は、同じ Windows ネイティブ システム サービス ルーチンの 2 つのバージョンです。

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

要件

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

こちらもご覧ください

TRANSACTION_BASIC_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_INFORMATION_CLASS

TRANSACTION_PROPERTIES_INFORMATION

TmGetTransactionId

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

ZwCreateTransaction

ZwOpenTransaction

ZwSetInformationTransaction