CreateTransaction 関数 (ktmw32.h)
新しいトランザクション オブジェクトを作成します。
構文
HANDLE CreateTransaction(
[in, optional] LPSECURITY_ATTRIBUTES lpTransactionAttributes,
[in, optional] LPGUID UOW,
[in, optional] DWORD CreateOptions,
[in, optional] DWORD IsolationLevel,
[in, optional] DWORD IsolationFlags,
[in, optional] DWORD Timeout,
[in, optional] LPWSTR Description
);
パラメーター
[in, optional] lpTransactionAttributes
返されたハンドルを子プロセスによって継承できるかどうかを決定する SECURITY_ATTRIBUTES 構造体へのポインター。 このパラメーターが NULL
構造体の lpSecurityDescriptor メンバーは、新しいイベントの セキュリティ記述子 を指定します。 lpTransactionAttributes
[in, optional] UOW
引っ込み思案。 ゼロ (0) にする必要があります。
[in, optional] CreateOptions
任意のトランザクション命令。
価値 | 意味 |
---|---|
|
トランザクションを分散できません。 |
[in, optional] IsolationLevel
引っ込み思案;0 を指定します。
[in, optional] IsolationFlags
引っ込み思案;0 を指定します。
[in, optional] Timeout
タイムアウト間隔 (ミリ秒単位)。 0 以外の値を指定した場合、準備された状態に達していない場合、間隔が経過するとトランザクションは中止されます。
無限タイムアウトを提供するには、ゼロ (0) または INFINITE を指定します。
[in, optional] Description
ユーザーが読み取り可能なトランザクションの説明。
戻り値
関数が成功した場合、戻り値はトランザクションのハンドルです。
関数が失敗した場合、戻り値は INVALID_HANDLE_VALUE。 拡張エラー情報を取得するには、GetLastError 関数を呼び出します。
次の一覧は、考えられるエラー コードを示しています。
備考
トランザクション ハンドルを閉じるには、CloseHandle 関数を使用します。 クライアントがトランザクション ハンドルを使用して CommitTransaction 関数を呼び出す前に最後のトランザクション ハンドルを閉じると、KTM はトランザクションをロールバックします。
トランザクションを分散トランザクションに昇格可能にする必要がある場合は、分散トランザクション コーディネーター (DTC) にトランザクションに参加するためのアクセス権を付与する必要があります。 そのためには、lpTransactionAttributes パラメーターに、DTC の SID (S-1-5-80-28183575) を含むアクセス制御エントリが含まれている必要があります。 84-3387065753-4000393942-342927828-138088443) とTRANSACTION_ENLIST右側。 詳細については、「分散トランザクション コーディネーターの とアクセス制御コンポーネントの 」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista |
サポートされる最小サーバー | Windows Server 2008 |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | ktmw32.h |
ライブラリ | KtmW32.lib |
DLL | KtmW32.dll |
関連項目
CommitTransaction を
分散トランザクション コーディネーター の
カーネル トランザクション マネージャー関数 の
RollbackTransaction の
SetTransactionInformation の