私のMSMQでメッセージの数を取得しようとしています。私は、インターネット上でこのコードを発見した(何度も):MSMQ Comがキューを見つけることができません。
// setup the queue management COM stuff
MSMQManagement _queueManager = new MSMQManagement();
object machine = "MyLaptopComputer";
object path = @"DIRECT=OS:MyLaptopComputer\PRIVATE$\MyQueue";
_queueManager.Init(ref machine, ref path);
Console.WriteLine(_queueManager.MessageCount);
Marshal.ReleaseComObject(_queueManager);
それがこのエラーで失敗した私は_queueManager.Init
に着くたびに:私がチェックしている
The queue path name specified is invalid.
(ダブルチェックする)私のキュー名それが間違っているかどうかを確認してください。私は別のキュー、別のマシン、ローカルで実行しているリモート実行してみました...何も動作しません。
私も上記のコードのバリエーションを試しました。例えば私が試してみました:私はそれらにアクセスするNServiceBusを使用する場合
_queueManager.Init("MyLaptopComputer", @"DIRECT=OS:MyLaptopComputer\PRIVATE$\MyQueue");
キューがNServiceBusと機能をうまく使用されています。
どのように私はこれを動作させることができますか?
"localhost"または "。"を使用してみましたか?あなたの明示的なコンピュータ名の代わりにあなたのパスに? –
@SeanH私は試してみました "。"しかし、私はあきらめる前にちょっとだけ試してみたはずです。私の仕事の変化を見るために私の答えを見てください。 – Vaccano
なぜ、COMクラス内に完全に良いApiがある場合、COMクラスを使用していますか?あなたはC#を使用しているので、ネットフレームワーク? –