次の方法で共有


System.Messaging 名前空間

System.Messaging 名前空間は、ネットワークのメッセージ キューへの接続、監視、および管理を行い、メッセージの送信、受信、またはピークを行うことができるクラスを提供します。

MessageQueue クラスのメンバには、キューのメッセージの読み取りおよび書き込みのための次のメソッドがあります。

  • Send メソッドを使用すると、アプリケーションを使用してキューにメッセージを書き込むことができます。メソッドをオーバーロードすると、メッセージを送信するときに (送信する情報を詳細に制御する) Message を使用するか、またはアプリケーション固有のクラスなど他のマネージ オブジェクトを使用するかを指定できます。このメソッドは、トランザクションの一部としてのメッセージの送信もサポートします。
  • ReceiveReceiveByIdReceiveByCorrelationId の各メソッドは、キューからメッセージを読み取るための機能を提供します。 Send メソッド同様、これらのメソッドはトランザクション キューの処理をサポートするオーバーロードを提供します。これらのメソッドは、キューが空の場合に処理を継続できるようにするタイムアウト パラメータを持つオーバーロードも提供します。これらのメソッドは同期処理の例であるため、タイムアウトを指定しない限り、メッセージを受け取るまで現在のスレッドを中断します。
  • Peek メソッドは Receive と類似していますが、メッセージを読み取ったときにキューからメッセージを削除しません。 Peek はキューの内容を変更しないため、トランザクション処理をサポートするオーバーロードはありません。ただし、 PeekReceive と同様にキューから同期的にメッセージを読み取るため、メソッドのオーバーロードはタイムアウトの指定をサポートしてスレッドが無限に待機することを防止します。
  • BeginPeekEndPeekBeginReceiveEndReceive の各メソッドは、キューから非同期的にメッセージを読み取るメソッドを提供します。これらのメソッドは、メッセージがキューに到達するのを待機している間に現在のスレッドを中断することはありません。

MessageQueue クラスの他のメソッドは、指定した基準によりキューのリストを取得し、特定のキューが存在するかどうかを確認する機能を提供します。

MessageQueue クラスの他のメソッドには、メッセージ キューのキューの作成と削除のためのメソッド、メッセージ列挙子を使用してキュー内のメッセージを順に処理するメソッド、キュー列挙子を使用してシステムのキューを反復処理するメソッド、ACL ベースのアクセス権を設定するメソッド、接続キャッシュを使用するメソッドがあります。

Message クラスは、ユーザーがキューに送信した情報の詳細な制御を提供し、キューからメッセージを受信またはピークを行うときに使用されるオブジェクトです。 Message クラスのプロパティには、メッセージ本文の他、受信確認設定、フォーマッタ選択、識別、認証情報および暗号化情報、タイムスタンプ、トレース、サーバー履歴、配信不能キューの使用に関する指示、およびトランザクション データがあります。

MessageQueue コンポーネントは、キューから送受信したメッセージをシリアル化および逆シリアル化できる 3 つのフォーマッタに関連付けられています。

  • XmlMessageFormatter は疎結合メッセージを提供し、シリアル化された型をクライアントとサーバーで独立してバージョン管理できます。
  • ActiveXMessageFormatter は MSMQ COM コントロールと互換性があります。このフォーマッタによりコントロールが受信できる型を送信し、コントロールが送信した型を受信できます。
  • BinaryMessageFormatterXmlMessageFormatter の代替となるより高速なフォーマッタですが、疎結合メッセージの機能はありません。

Messaging 名前空間の他のクラスはコード アクセス セキュリティおよび ACL ベースのセキュリティをサポートしており、キューからメッセージを読み取るときに Message プロパティをフィルタ処理し、メッセージの送受信時にトランザクションを使用します。

名前空間の階層構造

クラス

クラス 説明
AccessControlEntry 共通タスクのアプリケーション固有の実装を行うトラスティ (ユーザー、グループ、またはコンピュータ) のアクセス権を指定します。
AccessControlList 1 つ以上のトラスティのアクセス権を指定したアクセス制御エントリのリストを格納しています。
ActiveXMessageFormatter MSMQ ActiveX コンポーネントと互換性があるフォーマットを使用して、メッセージ キュー メッセージの本文との間でプリミティブ データ型とほかのオブジェクトのシリアル化または逆シリアル化を行います。
BinaryMessageFormatter バイナリ形式を使用して、オブジェクト、または関連付けられたオブジェクトのグラフ全体を、メッセージ キューのメッセージの本文にシリアル化、またはメッセージ キューのメッセージの本文から逆シリアル化します。
DefaultPropertiesToSend Message インスタンス以外のオブジェクトをメッセージ キューに送信するときに使われるプロパティの既定値を指定します。
Message メッセージ キューのメッセージを定義するのに必要なプロパティへのアクセスを実現します。
MessageEnumerator メッセージ キュー内のメッセージを列挙するための前方向カーソルを提供します。
MessagePropertyFilter メッセージ キューからメッセージをピークまたは受信するときに取得されるプロパティを制御および選択します。
MessageQueue メッセージ キューサーバーのキューにアクセスできるようにします。
MessageQueueAccessControlEntry メッセージ キューのタスクを実行するトラスティ (ユーザー、グループ、またはコンピュータ) のアクセス権を指定します。
MessageQueueCriteria MessageQueue クラスの GetPublicQueues メソッドを使用してクエリを実行するときに、メッセージ キューにフィルタをかけます。
MessageQueueEnumerator メッセージ キュー内のメッセージを列挙するための前方向カーソルを提供します。
MessageQueueException Microsoft メッセージ キュー内部エラーが発生した場合にスローされる例外。
MessageQueueInstaller アプリケーションの実行に必要なキューのインストールと構成ができます。このクラスは、 MessageQueue をインストールするときに、InstallUtil.exe などのインストール ユーティリティによって呼び出されます。
MessageQueuePermission メッセージのコード アクセス許可を制御できるようにします。
MessageQueuePermissionAttribute 宣言的 MessageQueue アクセス許可チェックを可能にします。
MessageQueuePermissionEntry メッセージのためのコード アクセス セキュリティのアクセス許可セットの最小単位を定義します。
MessageQueuePermissionEntryCollection 厳密に型指定された MessageQueuePermissionEntry オブジェクトのコレクションを格納します。
MessageQueueTransaction メッセージ キューの内部トランザクションを提供します。
MessagingDescriptionAttribute プロパティまたはイベントの説明を指定します。
PeekCompletedEventArgs PeekCompleted イベントのデータを提供します。非同期のピーク操作がイベント ハンドラを呼び出すと、そのクラスのインスタンスがハンドラに渡されます。
ReceiveCompletedEventArgs ReceiveCompleted イベントのデータを提供します。非同期の受信操作がイベント ハンドラを呼び出すと、このクラスのインスタンスがハンドラに渡されます。
Trustee アクセス制御エントリの適用先のユーザー アカウント、グループ アカウント、またはログオン セッションを指定します。
XmlMessageFormatter XSD スキーマ定義の XML 書式を使用して、メッセージ本文との間でオブジェクトをシリアル化および逆シリアル化します。

インターフェイス

インターフェイス 説明
IMessageFormatter メッセージ キューのメッセージの本文からオブジェクトをシリアル化または逆シリアル化します。

デリゲート

デリゲート 説明
PeekCompletedEventHandler MessageQueuePeekCompleted イベントを処理するメソッドを表します。
ReceiveCompletedEventHandler MessageQueueReceiveCompleted イベントを処理するメソッドを表します。

列挙体

列挙体 説明
AccessControlEntryType トラスティのアクセス権の許可、拒否、または取り消しを行うかどうかを指定します。
AcknowledgeTypes メッセージ キューが送信元アプリケーションに返す受信確認メッセージのタイプを指定します。
Acknowledgment 試行されたメッセージ配信の結果を指定します。
CryptographicProviderType デジタル署名の検証に使用できる暗号サービス プロバイダを指定します。
EncryptionAlgorithm プライベート メッセージの本文を暗号化するために使われる暗号化アルゴリズムを指定します。
EncryptionRequired キューによって受信されたメッセージのプライバシ レベルを指定します。
GenericAccessRights Windows 2000 または Windows NT のアクセス形式を使用して、メッセージ キューによって、読み取り、書き込み、および実行のための標準アクセス権とオブジェクト固有のアクセス権の両方に割り当てられる、共通アクセス権のセットを指定します。
HashAlgorithm メッセージを認証するときにメッセージ キューによって使用されるハッシュ アルゴリズムを指定します。
MessagePriority メッセージがキューへ送信されている間、およびメッセージを送信先キューに挿入するときに、メッセージ キューによってメッセージに適用される優先順位を指定します。
MessageQueueAccessRights メッセージ キュー固有の操作のためのオブジェクト固有のアクセス権のセットを指定します。
MessageQueueErrorCode メッセージ キュー アプリケーション内で発生した、 MessageQueueException 例外を生成したエラーの原因を識別します。
MessageQueuePermissionAccess System.Messaging アクセス許可クラスによって使用されるアクセス レベルを定義します。
MessageQueueTransactionStatus 内部メッセージ キュー トランザクションの状態を指定します。
MessageQueueTransactionType メッセージ キュー トランザクションのタイプを指定します。
MessageType メッセージのタイプを識別します。使用できるメッセージのタイプとして、通常のメッセージ キューのメッセージ、肯定受信確認メッセージ (到着および読み取り) または否定受信確認メッセージ (到着および読み取り)、レポート メッセージがあります。
StandardAccessRights セキュリティ設定できるオブジェクトのほとんどの型に共通する操作に対応する標準アクセス権のセットを指定します。
TrusteeType トラスティの型を指定します。

参照

.NET Framework クラス ライブラリ