MessageQueue.GetMessageEnumerator 方法

定义

注意

This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.

为队列中的所有消息创建枚举器对象。 GetMessageEnumerator() 已弃用。 应改用 GetMessageEnumerator2()

public:
 System::Messaging::MessageEnumerator ^ GetMessageEnumerator();
public System.Messaging.MessageEnumerator GetMessageEnumerator();
[System.Obsolete("This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")]
public System.Messaging.MessageEnumerator GetMessageEnumerator();
member this.GetMessageEnumerator : unit -> System.Messaging.MessageEnumerator
[<System.Obsolete("This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")>]
member this.GetMessageEnumerator : unit -> System.Messaging.MessageEnumerator
Public Function GetMessageEnumerator () As MessageEnumerator

返回

MessageEnumerator保存队列中包含的消息。

属性

注解

GetMessageEnumerator 创建队列中所有消息的动态列表。 可以通过调用RemoveCurrentMessageEnumerator返回的消息从枚举器的当前位置从队列中删除消息GetMessageEnumerator

由于游标与队列中的消息动态列表相关联,因此如果消息超出当前游标位置,则枚举反映了对队列中消息所做的任何修改。 例如,枚举器可以自动访问放置在游标当前位置之外的低优先级消息,但不能访问在该位置之前插入的较高优先级消息。 但是,可以通过调用 ResetMessageEnumerator 来重置枚举,从而将光标移回列表的开头。

枚举中的消息顺序反映了它们在队列中的顺序,因此优先级较高的消息将显示在优先级较低的消息之前。

如果需要队列中消息的静态快照,而不是与其建立动态连接,请调用 GetAllMessages。 此方法返回对象数组,该数组 Message 表示调用方法时的消息。

下表显示了此方法在各种工作组模式下是否可用。

工作组模式 可用的
本地计算机
本地计算机和直接格式名称
远程计算机
远程计算机和直接格式名称

适用于

另请参阅