C#操作MSMQ示例,示例代码:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Messaging;
namespace MessageQueues {     class Program     {         staticvoid Main(string[] args)         {             /*    注意事项:              *    1. 发送和接受消息的电脑都要安装MSMQ。 * 2. 在工作组模式下不能访问public队列。              *    3. 访问本地队列和远程队列,path字符串格式不太一样。 * 4. public队列存在于消息网络中所有主机的消息队列中。              *    5. private队列则只存在于创建队列的那台主机上。              */
#region 以下是private队列访问示例:
            //访问本地电脑上的消息队列时Path的格式可以有如下几种:            MessageQueue mq =new MessageQueue();             //mq.Path = @".\Private$\test";             //mq.Path = @"sf00902395d34\Private$\test";  //sf00902395d34是主机名             //mq.Path = @"FormatName:DIRECT=OS:sf00902395d34\Private$\test";             //mq.Path = @"FormatName:DIRECT=OS:localhost\Private$\test";
            //访问远程电脑上的消息队列时Path的格式            mq.Path =@"FormatName:DIRECT=OS:server\Private$\test";
            //构造消息            Message msg =new Message();             msg.Body ="Hello,world. This is a test message. "+ DateTime.Now.ToString();
            //向队列发送消息            mq.Send(msg);
            //读取队列中的所有消息            Message[] msgs = mq.GetAllMessages();             foreach (Message m in msgs)             {                 Console.WriteLine(m.Body.ToString());             }
            //清除队列中的所有消息            mq.Purge();
#endregion
        }     } }

本地队列和远程队列的区别如下图所示:

需要注意的几点:

1. 访问远程队列和本地队列的path字符串格式有区别。

2. 不管是访问远程队列还是本地队列,访问者的本地系统一定要安装MSMQ。

C#操作MSMQ示例的更多相关文章

  1. C#操作MSMQ

    C#操作MSMQ using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

  2. 关于SVN的操作批处理示例

    关于SVN的操作批处理示例 为了一句话:不要动手做机器能够做的事情. 天天工作用svn,更新啥的打开目录啥的动作天天在重复.每次写些命令也蛮无聊的,不说了,看下面: 1 @echo off 2 rem ...

  3. Python操作SQLServer示例(转)

    转自:http://www.cnblogs.com/lrzy/p/4346781.html 本文主要是Python操作SQLServer示例,包括执行查询及更新操作(写入中文). 需要注意的是:读取数 ...

  4. 转:Python操作SQLServer示例

    注:此文也是转载,2018年1月发现此文阅读量过万,略感不安.当时只是为了自己存档学习,未粘此文的原始连接.如有侵权,通过即删除,敬请谅解! 从网上找的,估计原文是:Python操作SQLServer ...

  5. Python操作SQLServer示例

    本文主要是Python操作SQLServer示例,包括执行查询及更新操作(写入中文). 需要注意的是:读取数据的时候需要decode('utf-8'),写数据的时候需要encode('utf-8'), ...

  6. springLdap 操作ldap示例(增删改查)

    转自:http://blog.csdn.net/sundenskyqq/article/details/9002440 这部分的示例网上的确有很多,但是个人在查找的过程中还是感到不够满意,所以就自己总 ...

  7. [转]关于SVN的操作批处理示例

    为了一句话:不要动手做机器能够做的事情. 天天工作用svn,更新啥的打开目录啥的动作天天在重复.每次写些命令也蛮无聊的,不说了,看下面: @echo off rem 显示部分 @echo 注 意 事 ...

  8. PHP中使用数组指针函数操作数组示例

    数组的内部指针是数组内部的组织机制,指向一个数组中的某个元素.默认是指向数组中第一个元素通过移动或改变指针的位置,可以访问数组中的任意元素.对于数组指针的控制PHP提供了以下几个内建函数可以利用. ★ ...

  9. JAVA入门[21]-Jedis操作redis示例

    本节目标 通过JedisPool获取Jedis示例,并完成对redis 简单的Key-value读写操作. 完整代码结构如下: redis服务端 在本地运行redis-server.exe,然后在re ...

随机推荐

  1. nginx访问http自动跳转到https

    if ($server_port != '443' ) { rewrite ^/(.*)$ https://cms-news.artron.net/$1 permanent; }

  2. ubantu 文件解压缩

    对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见 的压缩文件就只有两种,一是,zip,另一个是.rar. ...

  3. posix多线程--线程取消

    1.三种取消状态Off                   禁用取消Deferred           推迟取消:在下一个取消点执行取消Asynchronous   异步取消:可以随时执行取消 in ...

  4. posix多线程--条件变量

    条件变量是用来通知共享数据状态信息的. 1.条件变量初始化两种方式:(1)静态初始化pthread_cond_t cond = PTHREAD_COND_INITIALIZER;代码示例如下: #in ...

  5. 临界区&Monitor

    监视器(Monitor)的概念 可以在MSDN(http://msdn.microsoft.com/zh-cn/library/ms173179(VS.80).aspx)上找到下面一段话: 与lock ...

  6. ADO.NET 连接方式进行数据库访问

    转自:http://www.cnblogs.com/oneword/archive/2010/09/10/1823414.html 连接到数据源 连接到数据源需要使用两步: 1.创建连接字符串 2.使 ...

  7. xml相关术语说明

    <project xmlns="http://maven.apache.org/POM/4.0.0"  --命名空间,类似包名,因为xml的标签可自定义,需要命名空间来区分x ...

  8. Python从MongoDB中按天读取数据并格式化日志

    #$cat SpeechMongoHandle.py from pymongo import Connection import time import datetime # CTRL_A='\x01 ...

  9. Eclipse中直接操作本地文件系统

    你是不是有时候觉得在Eclipse和windows资源管理器(也就是咱平时用的文件浏览器)之间切换很麻烦? Eclipse中也提供了本地文件系统浏览功能,在里面你也可以方便地进行各种文件操作 在Ecl ...

  10. ubuntu16.04中文乱码解决方案

    把环境变量设置为中文 </pre><pre name="code" class="plain">sudo vi /etc/default ...