I have MSMQ configured on my PDMWorks vault server (Server 2008 x64) and PDMWorks properly placing the xml files in the queue, from which I can read using some software I developed. However... the method that seems to work best to read these messages is the messaging BeginReceive method. This works great... except the receive method removes the message from the server after processing so nobody else can read it. Not so good for a shared queue.
I can use the BeginPeek method... which is designed to read the message but not purge it from the server. Perfect... except I believe this method is designed for a queue that's setup as transactional as the BeginPeek method will keep looping the same message over and over again w/ no indication that it's already read and processed the message. This obviously doesn't work well. I can't find any documentation to support this theory, other than code I've found that indicated the peek method would be used if the queue was transactional, and the read method otherwise.
It seems PDMWorks is not designed to work w/ a transactional queue and setting it up this way yields no messages in the queue when a triggering event occurs. Is this correct?
Any ideas on this? Am I going about this wrong? Is PDMWorks not designed to work w/ a shared queue in this method? I'm kind of at a loss on how to proceed w/ a shared queue where I can have multiple listeners process messages based on... whatever!
Any help would be appreciated...