MessageQueue.GetAllMessages メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
キューにあるすべてのメッセージを返します。
public:
cli::array <System::Messaging::Message ^> ^ GetAllMessages();
public System.Messaging.Message[] GetAllMessages ();
member this.GetAllMessages : unit -> System.Messaging.Message[]
Public Function GetAllMessages () As Message()
戻り値
キューにあるすべてのメッセージを表す Message 型の配列。配列の順序は、メッセージがメッセージ キューのキューに存在する順序と同じです。
例外
メッセージ キューのメソッドにアクセスしたときにエラーが発生しました。
例
次のコード例は、GetAllMessages の使用方法を示します。
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Populate an array with copies of all the messages in the queue.
array<Message^>^ msgs = queue->GetAllMessages();
// Loop through the messages.
for each(Message^ msg in msgs)
{
// Display the label of each message.
Console::WriteLine(msg->Label);
}
queue->Close();
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
// Populate an array with copies of all the messages in the queue.
Message[] msgs = queue.GetAllMessages();
// Loop through the messages.
foreach(Message msg in msgs)
{
// Display the label of each message.
Console.WriteLine(msg.Label);
}
注釈
GetAllMessagesは、それらのメッセージへの動的リンクではなく、キュー内のメッセージの静的なスナップショットを返します。 したがって、 配列を使用してキュー内のメッセージを変更することはできません。 キューとのリアルタイムの動的な対話 (メッセージを削除する機能など) が必要な場合は、 メソッドを GetMessageEnumerator2 呼び出して、キュー内のメッセージの動的な一覧を返します。
メソッドが呼び出された時点でキュー内のメッセージのコピーを返すの GetAllMessages で、配列には、キューに到着した新しいメッセージやキューから削除されたメッセージは反映されません。
GetAllMessages は、 プロパティで MessageReadPropertyFilter フィルター処理されていないプロパティのみを取得します。
次の表は、このメソッドがさまざまなワークグループ モードで使用できるかどうかを示しています。
ワークグループ モード | 利用可能 |
---|---|
ローカル コンピューター | はい |
ローカル コンピューターと直接形式の名前 | はい |
リモート コンピューター | いいえ |
リモート コンピューターと直接形式の名前 | はい |
適用対象
こちらもご覧ください
.NET