我正在尝试检索有关远程专用队列中的消息的详细信息,但我继续收到MessageQueueException“无效的队列路径名”。我可以使用MessageQueue.GetPrivateQueuesByMachine检索私有队列列表,但是,当我尝试查看返回的队列的任何细节时,我得到了异常。
var msmqQueues = MessageQueue.GetPrivateQueuesByMachine(serverName);
msmqQueues[0].CreateCursor(); // Throws MessageQueueException "Invalid queue path name"
msmqQueues[0].Label; // also Throws MessageQueueException "Invalid queue path name"
奇怪的是,GetPrivateQueuesByMachine调用似乎有效,因为msmqQueues中有正确的项目数,我可以访问它们的.Path属性(它看起来像典型的FormatName路径 - “FormatName:DIRECT = OS:SERVERNAME \私人$ \ QUEUENAME“)。
答案 0 :(得分:0)
工作组模式中私有队列的许多功能和属性远远不可用,只有野兽的性质。大多数方法和属性应在其msdn页面上有一个矩阵,概述可用性,例如http://msdn.microsoft.com/en-us/library/system.messaging.messagequeue.label.aspx