IPlaybackControl インターフェイス
アセンブリ: System.EnterpriseServices (system.enterpriseservices.dll 内)

<GuidAttribute("51372AFD-CAE7-11CF-BE81-00AA00A2FA25")> _ <InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)> _ Public Interface IPlaybackControl
[GuidAttribute("51372AFD-CAE7-11CF-BE81-00AA00A2FA25")] [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)] public interface IPlaybackControl
[GuidAttribute(L"51372AFD-CAE7-11CF-BE81-00AA00A2FA25")] [InterfaceTypeAttribute(ComInterfaceType::InterfaceIsIUnknown)] public interface class IPlaybackControl

COM+ カタログ内のコンポーネントに対して定義された例外クラスは、IPlaybackControl と元のクラスのインターフェイスの両方を実装します。元のクラス インターフェイスのメソッド実装は、クラス自体の内部で失敗したメソッドの例外処理の実行に使用されます。これらは、FinalClientRetry または FinalServerRetry の後に、もともと呼び出されたメソッドの例外を処理するために呼び出されます。
キュー コンポーネント プレーヤーは、IPlaybackControl のメソッドを呼び出して、メッセージが最後の静止キューまたは配信不能キューに置かれようとしていることを例外ハンドラ オブジェクトに通知します。キュー コンポーネント プレーヤーは、次に、元のメソッド呼び出しで失敗した例外ハンドラ オブジェクト内で同じメソッドを呼び出します。例外ハンドラ オブジェクトは、たとえば、問題の診断情報を収集したり、クライアントに問題を通知するオブジェクトまたはメッセージを生成したりすることによって、代替手段を実装できます。アプリケーションが IPlaybackControl を実装しない場合は、キュー コンポーネント プレーヤーがすべての再試行を終えると、最後の静止キューまたは配信不能キューにポイズン メッセージが置かれます。
ポイズン メッセージとは、サーバーまたはキュー システムの問題など、何らかの理由で処理できないメッセージです。トランザクションがロールバックされ、ポイズン メッセージがキューの先頭になります。メッセージが再びキューから取り出されると、同じ状態が発生します。このメッセージは、問題を修正するために何らかの処置が施されるまで無限にループし続けます。キュー コンポーネント サービスは、一連の再試行を使用することにより、ポイズン メッセージを処理します。再試行が何度か失敗した後、メッセージは最後の静止キューに移動されます。ポイズン メッセージは、キュー コンポーネントのメッセージ ムーバ ツールを使用して手動で移動するまで静止キュー内に残されます。
ポイズン メッセージの状況は、FinalServerRetry メソッドを使用してプログラミングによって解決することもできます。このメソッドは、遅延アクティベーションを再生しようとするすべての試行が失敗したことをサーバー側のコンポーネント作成者に通知します。
ポイズン メッセージを発見した場合、問題の基となる原因をすばやく解決できる可能性もあります。たとえば、何らかの原因でサーバーがオフラインになっていた場合は、サーバーをオンラインに戻すことができます。問題をすばやく解決できない場合は、トランザクションが発生しなかったことを要求元に通知する他のトランザクションを自動的に生成できます。この通知を受け取った要求元は、既にコミットされているトランザクションの効果を元に戻す補正トランザクションを作成できます。

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


IPlaybackControl メソッド

名前 | 説明 | |
---|---|---|
![]() | FinalClientRetry | サーバーにメッセージを配信しようとするすべてのメッセージ キュー試行が拒否され、最終的にメッセージがクライアント側のトランザクション配信不能キューに置かれていることをクライアント側の例外処理コンポーネントに通知します。 |
![]() | FinalServerRetry | サーバーへの遅延アクティベーションを再生しようとするすべての試行が失敗し、メッセージが最後の静止キューに移動されようとしていることをサーバー側の例外クラスの実装に通知します。 |

IPlaybackControl メンバ
メッセージ キューの配信機構のサーバー側再生エラーおよびクライアント側エラーの異常処理において、キュー コンポーネント内で機能します。
IPlaybackControl データ型で公開されるメンバを以下の表に示します。

名前 | 説明 | |
---|---|---|
![]() | FinalClientRetry | サーバーにメッセージを配信しようとするすべてのメッセージ キュー試行が拒否され、最終的にメッセージがクライアント側のトランザクション配信不能キューに置かれていることをクライアント側の例外処理コンポーネントに通知します。 |
![]() | FinalServerRetry | サーバーへの遅延アクティベーションを再生しようとするすべての試行が失敗し、メッセージが最後の静止キューに移動されようとしていることをサーバー側の例外クラスの実装に通知します。 |

- IPlaybackControlのページへのリンク