次の方法で共有


TmRollbackTransaction 関数 (wdm.h)

TmRollbackTransaction ルーチンは、指定されたトランザクションのロールバック操作を開始します。

構文

NTSTATUS TmRollbackTransaction(
  [in] PKTRANSACTION Transaction,
  [in] BOOLEAN       Wait
);

パラメーター

[in] Transaction

トランザクション オブジェクトへのポインター。 このポインターを取得するには、コンポーネントで ObReferenceObjectByHandle を呼び出し、 前に ZwCreateTransaction または ZwOpenTransaction を呼び出したオブジェクト ハンドルを指定する必要があります。

[in] Wait

呼び出し元が同期操作の 場合は TRUE 、非同期操作の 場合は FALSE に設定するブール値。 このパラメーターが TRUE に設定されている場合、呼び出しはロールバック操作が完了するまで戻りません。

戻り値

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

リターン コード 説明
STATUS_TRANSACTION_ALREADY_COMMITTED
トランザクションは既にコミットされているため、ロールバックできません。
STATUS_TRANSACTION_REQUEST_NOT_VALID
トランザクションはコミットされていませんが、現在の状態ではロールバックは許可されません。
STATUS_PENDING
ロールバック通知はリソース マネージャーにキューに登録されており、呼び出し元は Wait パラメーターに FALSE を指定しました。
 

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

注釈

TmRollbackTransaction ルーチンは、ZwRollbackTransaction ルーチンのポインター ベースのバージョンです。

Zw Xxx ルーチンの代わりに KTM の TmXxx ルーチンを使用する場合の詳細については、「TmXxx ルーチンの使用」を参照してください。

要件

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

こちらもご覧ください

ObReferenceObjectByHandle

ZwCreateTransaction

ZwOpenTransaction

ZwRollbackTransaction