zoukankan      html  css  js  c++  java
  • MSMQ使用小计

    1、远程服务端通过工具创建专有队列(客户端不支持通过代码创建队列并且无法在客户端判断队列是否创建,也无法判断队列是否使用事务性)

    2、客户端安装msmq服务

      控制面板所有控制面板项程序和功能打开或关闭Windows功能MSMQ服务器(勾选所有功能)

    3、引用System.Messaging

    4、客户端远程推送消息到服务端

      //使用IP

      MessageQueue mq = new MessageQueue(@"FormatName:DIRECT=TCP:192.168.10.129private$paymessagequeue");    

      //使用机器名

       MessageQueue mq = new MessageQueue(@"FormatName:DIRECT=OS:远程主机名private$paymessagequeue");

      mq.Send("Sending MSMQ private message");

     注意: FormatName 是表达式里唯一区分大小写的部分。其他部分可以随意使用大小写

    5、客户端远程读取消息

      using (MessageQueue mq = new MessageQueue(@"FormatName:DIRECT=TCP:192.168.10.129private$paymessagequeue"))               

         {                   

          //设置消息队列的格式化器,

           mq.Formatter = new XmlMessageFormatter(new Type[] { typeof(MessageEntity) });  

           //返回并移除此队列中的第一条消息       

           //Message firstmsg = mq.Receive(); 

           //返回但不移除此队列中的第一条消息              

           Message firstmsg = mq.Peek();

           //设置消息的格式化器                   

           firstmsg.Formatter = new XmlMessageFormatter(new Type[] { typeof(MessageEntity) });                   

           MessageEntity entity=firstmsg.Body as MessageEntity;

           Console.WriteLine("Received The first Private Message is: {0}",entity.Body.NotifyUrl);               

        }

  • 相关阅读:
    异常练习一 throw
    MAP排序
    Java正则表达式应用详解
    java多线程 sleep()和wait()的区别
    面向对象的15、18位中国大陆身份证号码解析、工具
    java学习笔记--this 关键字的理解
    Java六大问题你都懂了吗?
    Java类的声明和访问介绍
    java的五种数据类型解析
    Java集合框架的总结
  • 原文地址:https://www.cnblogs.com/zcz527/p/7065915.html
Copyright © 2011-2022 走看看