My problem is a little confusing. I have 2 servers (Windows Server 2008 R2) with MSMQ installed and I want to use Server B to consume a MessageQueue on Server A. When I try to Receive it always throws a message error: "Access to message queuing system is denied."
.
IP between them.
Server A: 172.31.23.130
Server B: 172.31.23.195
FormatName:Direct=TCP:172.31.23.195\private$\queuesource (It's working for Sends)
- I can ping each server from the other;
- The firewall is disabled;
- The "queuesource" has Full Control to "Everyone", "Anonymous Logon", "Network", "Network Services";
- Journal is disabled;
- Authentication is ok;
- The queue is Transactional.
My code in .Net C# is basically like this:
MessageQueue _sourceQueue = new MessageQueue();
_sourceQueue.Path = "FormatName:Direct=TCP:172.31.23.195\private$\queuesource";
_sourceQueue.Receive(); // << here throw an exception.
Actually I'm using the Private Queue only to avoid Active Directory's problems. For example, if the server DNS fail all network fail. I don't know what do anymore.