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

オブジェクトが実行されているトランザクションをコミットできること、およびオブジェクトが現在実行中のメソッド呼び出しから戻ったときに非アクティブ化する必要があることを宣言します。

構文

HRESULT SetComplete();

戻り値

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

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

注釈

オブジェクトは、 SetComplete を呼び出したメソッドから戻ると自動的に非アクティブ化されます。 オブジェクトが自動トランザクションのルートである場合、COM+ はトランザクションのコミットを試みます。 ただし、トランザクションに参加していたオブジェクトが SetAbort を呼び出したか、 DisableCommit を呼び出し、その後 EnableCommit または SetComplete を呼び出していない場合、トランザクションは中止されます。

オブジェクトがメソッド呼び出しから戻った後に状態を維持する必要がない場合は、 SetComplete を呼び出して、戻り値が返されるとすぐに自動的に非アクティブ化し、そのリソースを再利用できるようにする必要があります。

要件

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

こちらもご覧ください

IObjectContext