IObjectContext::EnableCommit メソッド (comsvcs.h)

オブジェクトの作業が必ずしも完了するとは限らず、トランザクション更新が一貫した状態であり、現在の形式でコミットできることを宣言します。

構文

HRESULT EnableCommit();

戻り値

このメソッドは、次の値を返すことができます。

リターン コード 説明
S_OK
メソッドが正常に完了し、オブジェクトのトランザクション更新をコミットできるようになりました。
E_UNEXPECTED
予期しないエラーが発生しました。 これは、あるオブジェクトが IObjectContext ポインターを別のオブジェクトに渡し、もう一方のオブジェクトがこのポインターを使用して EnableCommit を 呼び出した場合に発生する可能性があります。 IObjectContext ポインターは、最初に取得したオブジェクトのコンテキスト外では無効です。

解説

オブジェクトが EnableCommit を呼び出すと、参加しているトランザクションをコミットできますが、 SetComplete または SetAbort を呼び出すまで、またはトランザクションが完了するまで、クライアントからの呼び出し間で内部状態が維持されます。

EnableCommit は、オブジェクトがアクティブ化されたときの既定の状態です。 したがって、オブジェクトは、クライアントからの次の呼び出しの内部状態を維持する場合を除き、メソッドから返される前に常に SetComplete または SetAbort を呼び出す必要があります。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー comsvcs.h

関連項目

IObjectContext