■ ポイント
* 「System.Messaging」を参照設定を追加する必要がある★重要★ * 事前に「メッセージキューのインストール」を行っておく(以下を参照のこと)https://blogs.yahoo.co.jp/dk521123/29372187.html
* 管理ツールからメッセージキューのメッセージを確認できる * MessageQueue.Formatterを設定する(XML, Binary ...)
参考文献
http://d.hatena.ne.jp/m_yamamo0417/20091127/1259319361■ 専用キューが存在しているかを判別する
* MessageQueue.Exists()を使う
サンプル
private void button1_Click(object sender, EventArgs e) { // 「private$\msmq_sample」については、 // 右クリックして[プロパティ]で調べることができる if (MessageQueue.Exists(@".\private$\msmq_sample")) { this.label1.Text = "存在します"; } else { this.label1.Text = "存在しない"; } }
参考文献
http://www.itlab51.com/?p=4295■ メッセージキューにメッセージを送信する
サンプル
private void button2_Click(object sender, EventArgs e) { var queue = new MessageQueue(@".\private$\msmq_sample"); queue.Formatter = new XmlMessageFormatter( new Type[] { typeof(String) }); var message = new System.Messaging.Message(); message.Body = "メッセージ・ボディです"; message.Label = "メッセージ・ラベルです"; queue.Send(message); this.label1.Text = "管理ツールからメッセージキューを確認してみて下さい"; }
参考文献
http://www.itlab51.com/?p=4111http://orion.bluememe.jp/2011/08/msmq.html
http://www.atmarkit.co.jp/fdotnet/chushin/introwinform_05/introwinform_05_03.html
■ メッセージキューからメッセージを受信する
サンプル
private void button3_Click(object sender, EventArgs e) { var queue = new MessageQueue((@".\Private$\msmq_sample")); var message = new System.Messaging.Message(); message = queue.Receive(); message.Formatter = new XmlMessageFormatter( new Type[] { typeof(String) }); this.label1.Text = message.Body.ToString(); }
参考文献
http://www.itlab51.com/?p=4173今後参考になりそうな資料
キューの作成とメッセージの使用
http://msdn.microsoft.com/ja-jp/library/72td0547(v=vs.80).aspxWCF へのメッセージ キュー
http://msdn.microsoft.com/ja-jp/library/ms789008.aspxhttp://msdn.microsoft.com/ja-jp/library/ms789048(v=vs.85).aspx
http://msdn.microsoft.com/ja-jp/events/dd266964.aspx
メッセージ キューを介したメッセージ セキュリティ
http://msdn.microsoft.com/ja-jp/library/aa395200.aspxhttp://msdn.microsoft.com/ja-jp/library/ms789036.aspx
http://technet.microsoft.com/ja-jp/library/cc770678(v=ws.10).aspx
http://lab.technet.microsoft.com/ja-jp/magazine/72td0547
関連記事
MSMQ
メッセージキュー ~ 環境設定編 ~https://blogs.yahoo.co.jp/dk521123/29372187.html
メッセージキュー ~ パフォーマンス向上するには ~
https://blogs.yahoo.co.jp/dk521123/29399386.html
メッセージキュー に関するトラブルシューティング
https://blogs.yahoo.co.jp/dk521123/30137388.html