在使用MSMQ的过程中遇到了 Access to Message Queuing system is denied 问题
如下解决办法:
第一种,创建队列后设置权限;
MessageQueue mq = MessageQueue.Create(@”.\Private$\WuQainJuMSMQ”);
修改远程计算机queue权限就完全可以取得远程计算机queue的访问,具体方法有两种
1>mq.SetPermissions("用户名", 权限值);
2>my computer/manage/services and Applications/messsage Queuing/public queues-->queue name-->right click-->properites-->security--set permission
第二种,修改没有权限的队列
在系统目录system32中\msmq\storage\lqs目录中文件,用记事本打开...内容如下
*************************
[Properties]
Label=
Type=00000000-0000-0000-0000-000000000000
QueueName=\private$\msmqtriggersnotifications
Journal=00
Quota=4294967295
Security=01000780300000003c000000000000001400000002001c0001000000000014003f000f00010100000000000100000000010100000000000512000000010100000000000512000000
JournalQuota=4294967295
CreateTime=1252031354
BasePriority=0
ModifyTime=1252031354
Authenticate=00
PrivLevel=1
Transaction=00
SystemQueue=00
Signature=DoronJ
*************************
QueueName是队列的名称
Security就是权限;
新建一个队列,设置好权限,拷贝新建队列的Security到"WuQainJuMSMQ"的Security,保存文件;WuQainJuMSMQ就有了相应的权限;