Security MSMQ安全阻止来自Windows Server 2003中RPC通信的通信
我已经在运行WindowsServer2003的服务器中创建了一个消息队列,并创建了一个能够发送消息的客户端程序,但我无法将它们撤回。要发送消息,我使用以下代码(请注意,我使用的是事务队列): 为了获取信息,我尝试了以下方法,但没有成功:Security MSMQ安全阻止来自Windows Server 2003中RPC通信的通信,security,msmq,rpc,Security,Msmq,Rpc,我已经在运行WindowsServer2003的服务器中创建了一个消息队列,并创建了一个能够发送消息的客户端程序,但我无法将它们撤回。要发送消息,我使用以下代码(请注意,我使用的是事务队列): 为了获取信息,我尝试了以下方法,但没有成功: MessageQueueTransaction transaction = new MessageQueueTransaction(); try { transaction.Begin(); Messag
MessageQueueTransaction transaction = new MessageQueueTransaction();
try
{
transaction.Begin();
MessageQueue queue = new MessageQueue(QUEUE_NAME);
Message msg = queue.Receive(new TimeSpan(0, 0, 5), transaction);
msg.Formatter = new XmlMessageFormatter(new Type[] { typeof(String) });
Console.WriteLine(msg.Label + " - " + msg.Body);
transaction.Commit();
}
catch (Exception e)
{
transaction.Abort();
Console.WriteLine(e.Message);
}
在queue.Receive()调用中,我收到一个异常。关于这一点,我发现了很多类似的问题,我找到了三种可能的解决方案,但没有一种对我有效。我禁用了服务器上的防火墙,在注册表中创建了DWORD值,并且提供的解决方案之一似乎是针对Windows server 2008的。有人能帮我处理Windows Server 2003中MSMQ的远程呼叫吗?您遇到了什么异常?您的计算机上是否运行分布式事务协调器(DTC)服务?
MessageQueueTransaction transaction = new MessageQueueTransaction();
try
{
transaction.Begin();
MessageQueue queue = new MessageQueue(QUEUE_NAME);
Message msg = queue.Receive(new TimeSpan(0, 0, 5), transaction);
msg.Formatter = new XmlMessageFormatter(new Type[] { typeof(String) });
Console.WriteLine(msg.Label + " - " + msg.Body);
transaction.Commit();
}
catch (Exception e)
{
transaction.Abort();
Console.WriteLine(e.Message);
}