- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MSMQ消息的应用(实例和代码)
本文介绍以下内容:
如何创建一条消息,并将其发送给 Microsoft 消息队列,而在 Windows 应用程序中。
如何从专用队列中读取和反序列化消息内容进行显示。
写入并从 Microsoft 消息队列中读取
在 M 框架中,该 System.Messaging 命名空间具有读取和写入 Microsoft 消息队列所需的类。若要进行一个小的 Windows 应用程序模拟一个联机的物料的付款系统,请按照下列步骤操作:
打开 Microsoft Visual S 或 Microsoft Visual Studio 2005。
创建一个新的 Windows 应用程序在 Visual C#,然后 MSMQ 命名它。
如果没有出现,请显示解决方案资源管理器,请按 CTRL + ALT + L。在解决方案资源管理器中,右击 引用,然后单击 添加引用。
在 .net 选项卡上,选择 System.Messaging.dll 文件中的.dll 文件的列表。单击 选择,然后单击 确定。注意在 Visual Studio 2005 单击 System.Messaging.dll 的 dll,列表中的文件,然后单击 确定
Form1.cs 是在 设计 视图中打开。
从 工具箱 拖动到 Form1 的中间位置的下面:
4 行中的每个 标签,并且 (位置右侧的每个标签) 的 文本框。
在标签和文本框下两个 按钮 控件拖到 Form1。
用鼠标右键单击控件,单击 属性,然后再将标签的 Text 属性设置为下列 (按顺序):
付薪到:
您的姓名:
金额:
截止日期:
在 属性 对话框 button1文本 属性设置为 发送支付,和 button2 的 Text 属性设置为 处理付款。
您必须首先在计算机管理控制台中创建的专用队列使用时,此应用程序工作正常。若要这样做,请按照下列步骤操作:
在桌面上右键单击 我的电脑,然后单击 管理。
展开 服务和应用程序 节点以找到消息队列。注意如果找不到消息队列,则说明未安装该程序。
展开 消息队列,用鼠标右键单击 专用队列,指向 新建,然后单击 专用队列。
在 队列名称 框中键入 billpay,然后单击 确定。注意不要选择 事务性 复选框。保留计算机管理控制台打开,因为您返回到该以后若要查看的邮件。
在 Form1 代码的顶部添加两个使用包含驻留在 System.Messaging 命名空间和 System.Text 命名空间中的其他类的类声明之前的语句。(System.Text 命名空间是用于 StringBuilder 类的一个新的.net 框架类,则最好使用连接字符串时)
using System.Messaging;
using System.Text;
创建包含变量以保存定义付款的数据的结构。若要进行结构 Main 过程后添加以下代码:
public struct Payment
{
public string Payor,Payee;
public int Amount;
public string DueDate;
}
将在下面的步骤中的代码添加到 button1Click 事件中。
将结构的属性,如下所示设置窗体元素的值为:
Payment myPayment;
myPayment.Payor = textBox1.Text;
myPayment.Payee = textBox2.Text;
myPayment.Amount = Convert.ToInt32(textBox3.Text);myPayment.DueDate = textBox4.Text;
//创建 消息 类的实例,然后再将 Body 属性设置为付款结构:
System.Messaging.Message msg = new System.Messaging.Message();
msg.Body=myPayment;
若要将消息发送到 Microsoft 消息队列,创建 MessageQueue 类的实例并调用 发送 方法通过 消息 对象中。 MessageQueue 类是管理与 Microsoft 消息队列交互的包装。请注意用于设置在计算机管理控制台中创建的专用队列的路径语法。专用队列需要窗体 machinename\Private $ \queuename。本地主机计算机引用与一个圆点或一段 (显示为)。
MessageQueue msgQ =new MessageQueue(.\\Private$\\billpay);
msgQ.Send(msg);
代码现在存在是为了向 Microsoft 消息队列发送消息。.NET 框架会自动将邮件
文档评论(0)