我在使用IronPython访问MSMQ中的私有队列时遇到以下异常。异常是意外的,因为(1)当我使用IronPython控制台发送和接收消息时,在我的脚本中使用完全相同的命令时,(2)私有消息实际上存在(即“.\private$\sample”),以及(3)我已经将私有消息的“Everyone”用户的权限设置为完全控制。在
以下是我在ipy控制台和脚本中用于接收消息的代码片段:
import clr
clr.AddReference('System.Messaging')
from System.Messaging import *
queue_name = '.\\private$\sample'
queue = None
if MessageQueue.Exists(queue_name) = queue = MessageQueue(queue_name)
else : queue = MessageQueue.Create(queue_name)
print queue.Receive().Body # As mentioned this works in ipy console, but not on script
以下是例外:
^{pr2}$希望有人有主意。提前谢谢!在
我也遇到过类似的问题,根本原因是MSMQ的存储配额超出了!这似乎与错误信息无关,这使得它很难被发现。。。 要更改此配额,请右键单击“消息队列”(如果使用Windows server 2003,则从“计算机管理”中单击),然后单击“属性…”。。。(我不能发布图像,因为我是新用户),但在“属性”窗口中,您将在第一个选项卡中找到一个可编辑的存储限制字段。在
要检查服务器上当前使用的存储,请打开存储路径,然后检查其大小:(在同一属性窗口中打开“存储”选项卡,并获取存储文件夹的路径)如果配额大小与存储文件夹的大小相似,则这是问题的根本原因。在
如果您没有权限增加此配额限制,则应将用户添加到“消息队列属性”窗口的“安全”选项卡中。在
希望这能帮助。。。在
相关问题 更多 >
编程相关推荐