次の方法で共有


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

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

要件

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

こちらもご覧ください

TmRecoverTransactionManager

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

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRollforwardTransactionManager