2009-06-10 14 views
2

に配信するときに返されない謝辞私は、MSMQの確認応答をテストするために、次のコードのスクラップを持っている:「\民間の$ \のQUEUENAME」MSMQ:リモート・キュー

static void Main(string[] args) 
    { 
     string queuePath = args[0]; 
     string ackQueuePath = args[1]; 
     MessageQueue queue = new MessageQueue(queuePath); 
     MessageQueue ackQueue = new MessageQueue(ackQueuePath); 
     Message message = new Message("Body text"); 
     message.Label = "test"; 
     message.Recoverable = true; 
     message.TimeToReachQueue = new TimeSpan(0, 1, 0); 
     message.TimeToBeReceived = new TimeSpan(1, 0, 0); 
     message.AdministrationQueue = ackQueue; 
     message.AcknowledgeType = AcknowledgeTypes.FullReachQueue; 
     queue.Send(message, MessageQueueTransactionType.Single); 
    } 

queuePathとackQueuePath両方、すなわち、局所的である場合形式では、メインキューに「テスト」メッセージが表示され、管理キューのリーチキュー確認応答が期待どおりに取得されます。しかし、queuePathがリモートキュー、つまり "FormatName:DIRECT = OS:MACHINENAME \ private $ \ queuename"フォーマットを指している場合、そのリモートキューには "test"メッセージが表示されますが、ローカル管理キューにはリーチキュー応答はありません。

私は、確認応答がリモートキューから返されないことを示す何も見ていないので、自分のコードや環境に問題があると推測します。何か案は?

(両方のマシンは、Windows 2003です)

答えて

2

参考のために、私は両方のマシン上のメッセージキューイングを再インストールした後、これが適切に働いていました。

+3

を学ばなければなりませんでした。私は数週間前にそれを使い始めましたが、私はまだ何千もの質問があり、時にはこれがうまくいかないのです... –

4

@LievenCardoen & @marijne。

これが元の問題であるが確認応答キューがトランザクションであってはならないかどうかは不明です。 もしあなたが肯定応答メッセージを受け取ることはなく、あなたにこれを示すどんな種類のエラーメッセージもありません。私はこれに苦労:)本当にMSMQについて多くのことを言います...吸う

乾杯 ヨハン

関連する問題