この奇妙な問題に遭遇しました。私は認証されていないトランザクションmsmqからメッセージを受け取ろうとしています。私の環境は:MSMQリモート受信エラー "指定された形式名が要求された操作をサポートしていません"
- キューはWindows Server 2012 R2です。これは私が(正常に動作します)MSMQにSQL Serverからメッセージを送信しようとしていたクライアントアプリケーションがインストールされているDBサーバ(SQL Serverなど)
- Serverはまた、Windows Server 2012のでも
R2です。しかし、クライアントアプリケーションが下のコードを使用してメッセージを受信しようとすると、タイトルで述べたエラーがスローされます。
private void OnPeekCompleted(object sender, PeekCompletedEventArgs args)
{
MessageQueue mq = (MessageQueue)sender;
if (mq != null)
{
try
{
if (Log.IsInfoEnabled)
{
Log.InfoFormat("[{0}] Starting processing message queue {1}", _endpoint.RouteName, _queue.QueueName);
}
mq.EndPeek(args.AsyncResult);
MessageQueueTransaction transaction = new MessageQueueTransaction();
transaction.Begin();
Message message = mq.Receive(transaction);
... // omitted for simplicity
私はSQL
からキューにメッセージを送信しておりますので、私は次のことを確認したのと同じDBサーバ上のメッセージキューを持っている必要がありますので、DBサーバからクライアントサーバにアクセスすることはできません:
- SQL
- ありませんからメッセージを送信しません、問題のサーバー
- 未authenitcated RPCコールの間にN/Wアクセシビリティの問題がありますメッセージキューサーバーのセキュリティプロパティで有効にする
- キューの形式は正しいです。私は直接OS形式を使用しています。マシン名の代わりにIPアドレスを指定してTCP形式で試してみた
しかし、役に立たない。何か案は?これは前に働いていたし、動作を停止しました場合は
おかげ
キューアドレスとは何ですか? –
これまでにこの作業を行い、作業を停止しましたか? –