- 浏览: 489816 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (329)
- [发布至博客园首页] (12)
- [随笔分类][01] .Net X (59)
- [随笔分类][20] Architecture (16)
- [随笔分类][21] Developer Logs (13)
- [网站分类]Windows 7 (1)
- [随笔分类][13] Oracle & .Net (7)
- [随笔分类][16] Love in China (14)
- [随笔分类][15] Development Tools (20)
- [随笔分类][18] Windows Phone (12)
- [随笔分类][12] Design & Pattern (17)
- [网站分类].NET新手区 (22)
- [网站分类]首页候选区 (2)
- [随笔分类][08] Windows (Server) (13)
- [随笔分类][02] CSLA.Net (3)
- [随笔分类][10] jQuery & javaScript (10)
- [随笔分类][11] SQL Server (4)
- [随笔分类][22] Enterprise Logs (3)
- [随笔分类][03] News (9)
- [随笔分类][19] Quality Assurance (2)
- [随笔分类][05] Silverlight (20)
- [随笔分类][14] Google Earth & .Net (6)
- [网站分类]非技术区 (9)
- [随笔分类][07] WWF (2)
- [随笔分类][04] SharePoint (1)
- [随笔分类][20] Analysis & Design (36)
- [随笔分类][06] WCF (5)
- [随笔分类][12] Architecture (1)
- [随笔分类][09] WPF (0)
- [随笔分类][17] VStudio & Expression (5)
最新评论
-
zhangyy130:
你好,我关于第二段的那个表视图、模型与图这三者的关系我没有看明 ...
UML模型的组成 -
guji528:
谢谢分享!
Enterprise Architect 基础应用 -
studentsky:
好文章,图文并茂!
WCF 第一个用 Visual Studio 2010 创建的WCF服务 -
chen975311486:
用哪个工具画的????
UML中对关系的描述 (二) -
frankies:
继续学习中。。
UML 交互概述图
系统: Windows XP
1.安装MSMQ
控制面板—>添加安装程序
2. 配置MSMQ
右键点击新建MQ,属性,可以看到其完整访问路径
3.好了,新建一个ASP.net 的应用程序,并添加引用System.Messaging ,编写代码如下
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Configuration; using System.Messaging; namespace WebAppTestMSMQ { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { txtPath.Text = ConfigurationManager.AppSettings["path"].ToString(); } protected void Button1_Click(object sender, EventArgs e) { //完整队列格式为: 计算机名\private$\队列名称 (专用队列) MessageQueue mq = new MessageQueue(txtPath.Text.Trim()); System.Messaging.Message msg = new System.Messaging.Message(); msg.Body = txtSend.Text.Trim() + " " + DateTime.Now.ToString(); //消息格式为string msg.Formatter = new System.Messaging.XmlMessageFormatter(new Type[] { typeof(string) }); try { mq.Send(msg); } catch (Exception ex) { } } protected void Button2_Click(object sender, EventArgs e) { MessageQueue mq = new System.Messaging.MessageQueue(txtPath.Text.Trim()); //同步接收,直到得到一条消息为止,如果消息队列为空,会一直阻塞 System.Messaging.Message msg = mq.Receive(); msg.Formatter = new System.Messaging.XmlMessageFormatter(new Type[] { typeof(string) }); this.txtReceive.Text = "[" + DateTime.Now.ToString() + "]: " + msg.Body.ToString(); } } }
其中配置文件中的路径就是之前看到的位置,前面的计算机名也可以是ip地址
F5,运行程序,在发送信息框中输入信息,点击发送,将消息发送到队列,再点击获取消息按钮,从队列中获取消息。
消息的接收又分成同步和异步方式两种,同步接收在规定时间内从消息队列中取出收到的第一条消息,当消息队列中没有消息时,程序处于等待状态;异步接收方式则是定义了一个事件处理函数,当消息队列中第一个消息到达时立即触发该函数。
在计算机管理中,可以查看队列中的内容
关于队列的属性
path属性:它可以决定引用队列的三种方式,路径引用、格式名引用、标识引用
category属性:标识当前使用的队列的类型。Category是队列所有者定义的GUID值。该GUID值可以有GUID生成工具产生或者是用户自定义的数字值。GUID值是唯一的,这样才可以根据GUID值,把多个消息队列划分为不同的类别(category)。
跟发送数据类型相关的属性
Formatter属性:决定在一个队列中如何发送和接收消息的顺序,以及可以在一个消息中发送什么样的内容。
和队列交互相关的属性
DenyShareReceive属性:决定同一时间内只有一个部件能够访问消息队列中的消息。
CanRead和CanWrite属性:决定队列是否可以被读取或者是写入。
MaximumQueueSize和MaximumJournalSize属性:以千字节为单位设置一个队列(日志队列)的消息最大容纳量。一旦接收的消息到达这个容量,新的消息将不再被接收。
一般情况下,消息队列的最大值为消息队列管理员所设置,如果这个值没有控制的话,那么缺省的消息队列最大容量将是无限制的。
UseJournalQueue属性::设置是否将收到的消息拷贝到日志消息队列中去。
源代码:msmqtest.rar
博客园有一位博友写的很好的,一定要看看:
发表评论
-
LINQ to SQL语句之Insert/Update/Delete操作
2009-12-30 14:54 1098Insert/Update/Delete操作 插入(Ins ... -
RabbitMQ 安装配置和简单实例
2010-01-21 16:52 1813安装ErLang运行环境 配置运行环境变量 启动服务 ... -
IromPython .Net 的简介和第一个例子
2010-01-23 18:53 1331.Net 4 都已经到来 ... -
Microsoft Asp.Net MVC 从入门到精通
2010-01-27 17:53 827ASP.NET MVC Framework是微软官方提供的MV ... -
C# Socket 同步通信与异步通信 示例
2010-01-30 17:50 4728同步 1.建立链接发送和获取信息 异步 1.服务器端建立一 ... -
解决 Visual Stuido 工具栏中的工具重置后,恢复回来。
2009-12-18 17:06 1235拿DevExpress 控件为例,如果重置工具栏后,以前的工具 ... -
LINQ to SQL 用O/R设计器手工建表对象
2009-10-11 22:04 1009除了自己建立定制对象外,还可以使用O/R设计器以可视化的方式创 ... -
LINQ to XML .Net 3.5 中的新XML对象
2009-10-15 14:11 881System.Xml.Linq 命名空间中,有一系列新的LIN ... -
LINQ to XML 用 LINQ 查询 XML
2009-10-15 15:57 665将一个已知的XML放到XDocument 对象当中使用LINQ ... -
LINQ to XML 操作XML文档
2009-10-15 17:18 967使用 XDocument 对象的 Element 方法,获取制 ... -
C# 编码规范
2009-10-15 19:20 717陈年的文档,不过很不错整理出来发到博客上,还有更多的朋友需要。 ... -
Visual Studio 项目模板、文件模板、代码段和环境设置
2009-10-15 19:31 928很久前使用过,那个时候还没有开始写博客,好久不用就都忘记了,这 ... -
ADO.NET Entity Framework 概述
2009-10-16 11:50 559ADO.NET Entity Framework 与 LINQ ... -
LinqPad 1.31 下载
2009-01-14 15:42 959LinqPad 1.31 也许你已经非常熟悉他了,为即将使用L ... -
jQuery 的第一个例子
2009-01-18 10:34 784通过这个例子可以对jQuery的使用有个基本的认识,jQ ... -
jQuery 选择器的使用
2009-01-18 10:39 827jQuery 能如此的流行,很重要的一点也许就是他有非常强大且 ... -
一次从GridView 获得多个指定行中多个指定控件的值
2009-01-20 07:33 862一次从GridView 获得多个指定行中多个指定控件的值,非常 ... -
jQuery 的Ajax应用(1)--学习篇,内附实例
2009-01-28 21:48 1317下面以前台jQuery,后天C# 的方式,演示了,如何通过 ... -
Enterprise Library 4.1 一步一步从入门到精通(未完成)
2009-02-05 23:04 879Enterprise Library 4.1 一步一步从入门到 ... -
Asp.Net & Oracle 编程一步一步从入门到精通(图解)随笔系列 --- 目录
2009-02-23 19:11 1044Asp.Net & Oracle 编程一步一步从入门 ...
相关推荐
MSMQ 微软信息队列
MSMQ(Microsoft Message Queue)微软消息队列是操作系统中消息通信的基础,也是用于创建分布式、松散连接的消息通信应用程序的开发工具。它与电子邮件很相似,它们都包含多个属性,用于保存消息,消息类型中都指出...
MSMQ(MicroSoft Message Queue)在ASP.NET中的应用
依次展开“Microsoft Message Queue (MSMQ) 服务器”、“Microsoft Message Queue (MSMQ) 服务器核心”, 然后选中要安装的消息队列功能的复选框。单击“确定”。 如果系统提示您重新启动计算机,请单击“确定”以...
C#实现微软的消息队列 分客户端和服务端
Professional MSMQ: Microsoft Message Queue Programming
微软消息队列MSMQ示例,codeproject中的好东西。大家可以研究一下
讲 师:邵志东 MSDN特邀讲师 课程简介:MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的...
在ASP.NET中进行消息处理(二) 讲 师:邵志东 MSDN特邀讲师 课程简介:MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同...
在.Net环境下C#编写的Windows Message Queue程序,VS2003调试通过: (1)先安装Message Queuing Services 通过Control Panel,“Add/Remove Programs” – “Add/Remove Windows Components”步骤安装MSMQ。 (2)...
Message Queue(微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间中的任一位置。它的实现原理是:消息的发送者把自己想要...
采用.net4.0,winform 开发
ASP.NET中进行消息处理(MSMQ)示例源码 包括: 1.MSMQ安装 2.普通读取和接收消息 3.复杂消息发送实例 4.消息传递的优先级 5.事务性消息处理 6.异步消息处理
可用于调试MSMQ、RabbitMQ、ActiveMQ三种消息队列 其中MSMQ支持Active、Binary、XML格式(要勾选事务) RabbitMQ支持逐条接发、批量接发、RPC回调模式、新建队列、建立持久化队列、连接测试等功能。
MSMQ全称MicroSoft Message Queue,微软消息队列,是在 多个不同的应用之间实现相互通信的一种异步传输模式,【CLR】C#操作MSMQ示例
学习微软消息队列的基础教程,包括创建对列,删除对列,发送消息,接收消息
微软消息队列,创建队列,发送消息,读取消息
消息队列开发,实现消息队列创建\删除,发送回收
《ASP.NET完全入门》面向初...第七篇“高级应用”——在高级应用一篇中,我们将介绍三个方面的内容:XML在ASP.NET中的应用、三层结构及其应用、以及微软消息队列(MSMQ),这些是作为一个高级应用者所必需掌握的知识。