次の方法で共有


ObjectContext::IsInTransaction メソッド (comsvcs.h)

現在のオブジェクトがトランザクションで実行されているかどうかを示します。

構文

HRESULT IsInTransaction(
  [out] VARIANT_BOOL *pbIsInTx
);

パラメーター

[out] pbIsInTx

現在 のオブジェクトがトランザクション内で実行されている場合は TRUE。 それ 以外の場合は FALSE。

戻り値

このメソッドは、標準の戻り値E_INVALIDARG、E_OUTOFMEMORY、E_FAIL、および次の値を返すことができます。

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

注釈

このメソッドを使用すると、トランザクションを必要とするオブジェクトが実行されないようにすることができます。 たとえば、トランザクションを必要とするコンポーネントがコンポーネント サービス管理ツールで正しく構成されていない場合は、このメソッドを使用して、オブジェクトにトランザクションがないことを確認できます。 その後、エラーを返してユーザーに問題を警告したり、適切なアクションを実行したりできます。

要件

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

こちらもご覧ください

Objectcontext