我在我的本地机器上在其他一些进程中创建了一个队列,如下所示:
MessageQueue.Create(@".\private$\sampleQueue");
在我的读者进程中,我附加如下:
var queue = new MessageQueue(@".\private$\sampleQueue");
当我尝试执行 queue.Peek()
时,我收到拒绝访问异常。我不在域中,这只是我的本地工作组计算机。有什么想法吗?
最佳答案
MSMQ 使用不同的协议(protocol)来工作:
- 推送信息(发送消息)使用MSMQ协议(protocol)。
- 使用 RPC 协议(protocol)提取信息(接收消息、获取属性等)。
如果这不是一个简单的权限问题(很可能是),那么您需要这篇博文:
了解 MSMQ 安全性如何阻止 RPC 流量 http://blogs.msdn.com/b/johnbreakwell/archive/2010/03/24/understanding-how-msmq-security-blocks-rpc-traffic.aspx
干杯
约翰
关于c# - MSMQ 读取错误(拒绝访问),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7918578/