C#操作MSMQ
C#操作MSMQ
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Messaging;
namespace MessageQueues
{
class Program
{
static void 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的更多相关文章
- C#操作MSMQ示例
C#操作MSMQ示例,示例代码: using System; using System.Collections.Generic; using System.Linq; using System.Tex ...
- C#操作MSMQ(消息队列)
using System; using System.Collections.Generic; using System.Text; using System.Messaging; using Sys ...
- (转)MSMQ续
原文作者:虔诚者 点此传送至原文 在上一篇我简单介绍了MSMQ的相关概念,本篇将以代码说明 Message Message是MSMQ的数据存储单元,我们的用户数据一般也被填充在Message的b ...
- MSMQ(消息队列)续
在上一篇我简单介绍了MSMQ的相关概念,本篇将以代码说明 Message Message是MSMQ的数据存储单元,我们的用户数据一般也被填充在Message的body当中,因此很重要,让我们来看一看其 ...
- .NET分布式事务处理总结【下】 - 包含MSMQ的分布式事务处理
转自:http://www.cnblogs.com/daxnet/archive/2011/03/15/1984995.html .NET直接提供对MSMQ的访问支持,只需要添加System.Mess ...
- MSMQ队列学习记录
微软消息队列-MicroSoft Message Queue(MSMQ) 使用感受:简单. 一.windows安装MSMQ服务 控制面板->控制面板->所有控制面板项->程序和功能- ...
- Message Queuing(MSMQ)
一.前言 MicroSoft Message Queuing(微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间中的任 ...
- MSMQ .NET下的应用
Message Message是MSMQ的数据存储单元,我们的用户数据一般也被填充在Message的body当中,因此很重要,让我们来看一看其在.net中的体现,如图: 在图上我们可以看见,Messa ...
- MSMQ队列的简单使用
微软消息队列-MicroSoft Message Queue(MSMQ) 使用感受:简单. 一.windows安装MSMQ服务 控制面板->控制面板->所有控制面板项->程序和功能- ...
随机推荐
- Ubuntu14.04 clang3.8 Installation Guide
Reference Installing clang 3.8 on Ubuntu 14.04.3. Ubuntu14.04 clang3.8 Installation Guide 1.add the ...
- js判断数字、整数、字符串、布尔,特殊方法
整数: function isInteger(obj) { return Math.floor(obj) === obj } isInteger(3) // true isInteger(3.3) / ...
- SE91 SAP消息类型
SE91 SAP消息类型 E:Error W:Warning I :Information A :Abortion S :Success 标准 : MESSAGE ID sy-msgid TYPE ...
- HDU 4318 Power transmission(最短路)
http://acm.hdu.edu.cn/showproblem.php?pid=4318 题意: 给出运输路线,每条路线运输时都会损失一定百分比的量,给定起点.终点和初始运输量,问最后到达终点时最 ...
- JAVA基础之复识二
JAVA语言 未经本人允许禁止转载或使用 基础知识:JAVA数据类型,运算符,流程控制等 注释: // 单行注释 /* 多行连续注释 ... */ /** 文档注释,该类型的注释会生成一个html文件 ...
- Spring-json依赖
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jacks ...
- 前端性能优化之按需加载(React-router+webpack)
一.什么是按需加载 和异步加载script的目的一样(异步加载script的方法),按需加载/代码切割也可以解决首屏加载的速度. 什么时候需要按需加载 如果是大文件,使用按需加载就十分合适.比如一个近 ...
- JS中什么是发布--订阅模式?
转载文章部分内容: 发布订阅模式介绍 发布---订阅模式又叫观察者模式,它定义了对象间的一种一对多的关系,让多个观察者对象同时监听某一个主题对象,当一个对象发生改变时,所有依赖于它的对象都将得到通知. ...
- 【ATcoder】D - Half Reflector
题目链接:http://agc011.contest.atcoder.jp/tasks/agc011_d 每次都是两道题惨啊.... 想了想大概做法,既然小球走过去就会导致装置变化?那么是不是有一点像 ...
- 在JAVA中返回类型使用泛型T和Object有什么区别?
最近在读jackson源码的时候发现有段代码返回类型写的是<T> T,而我自己一般写的是Object.上网搜了下这个语法糖,在stackoverflow上找到一个比较简单易懂的解释,搬运过 ...