• 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);               

        }

  • 相关阅读:
    osworkflow
    用Flash做报表,推荐使用Flash饼图
    ANT 发布项目中 build.xml 文件的详细配置
    tomcat 修改java后不重启的方法
    工厂方法(Factory Method)模式
    NSRunLoop概述和原理
    使用NSOperationQueue简化多线程开发
    使用Grad Central Dispatch简化iPhone开发
    进度显示例子学习
    深入浅出 iOS 之多线程
  • 原文地址:https://www.cnblogs.com/zcz527/p/7065915.html
Copyright © 2020-2023  润新知