一个com+消息队列的例子
2005-04-27 15:16
309 查看
最近在研究com+和消息队列,于是就做了个例子。
com+和消息队列结构是:
首先服务器端安装com+和消息队列服务器,而客户端安装com+服务的代理和消息队列服务器。
com+和消息队列的工作过程是:
客户端构造成个消息放到本机的发送消息队列中,客户端发送消息队列负责发该消息发送到com+服务器上,
com+ 服务器消息队列接受客户端的消息。com+负责侦听消息,如用消息到达,就处理。
代码如下:
一.
1.服务器端.新建类库项目ServerLibrary2
using System;
using System.Runtime.InteropServices;
using System.Messaging;
using System.EnterpriseServices;
using System.Windows.Forms;
using System.IO;
using System.Web;
using System.Data.SqlClient;
namespace ServerLibrary2
2, 用 sn -k "路径+文件名" 生成强类型的程序集,在AssemblyInfo.cs 文件中加[assembly: AssemblyKeyFile(@"c:\key.snk")]
2. 生成 Serverlibrary2.dll
3. 注册 regsvcs serverlibrary2.dll.
说明:机器上必须安装消息队列服务器。
二. 客户端
1.客户端代码
try
{
//用接口调用
ServerLibrary2.IQComponent IQC= (IQComponent)Marshal.BindToMoniker("queue:/new:ServerLibrary2.QCSimpleDemo");
int num=0;
num=int.Parse(this.textBox2.Text);
IQC.ComplicatedFunction(num);
Marshal.ReleaseComObject(IQC);
MessageBox.Show("转帐成功!!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
说明:Marshal.BindToMoniker 是System.Runtime.InteropServices下的一个方法。它获取一个指针。
Marshal.ReleaseComObject(IQC); 释放对象引用数
欢迎讨论: showstrong@hotmail.com
com+和消息队列结构是:
首先服务器端安装com+和消息队列服务器,而客户端安装com+服务的代理和消息队列服务器。
com+和消息队列的工作过程是:
客户端构造成个消息放到本机的发送消息队列中,客户端发送消息队列负责发该消息发送到com+服务器上,
com+ 服务器消息队列接受客户端的消息。com+负责侦听消息,如用消息到达,就处理。
代码如下:
一.
1.服务器端.新建类库项目ServerLibrary2
using System;
using System.Runtime.InteropServices;
using System.Messaging;
using System.EnterpriseServices;
using System.Windows.Forms;
using System.IO;
using System.Web;
using System.Data.SqlClient;
namespace ServerLibrary2
2, 用 sn -k "路径+文件名" 生成强类型的程序集,在AssemblyInfo.cs 文件中加[assembly: AssemblyKeyFile(@"c:\key.snk")]
2. 生成 Serverlibrary2.dll
3. 注册 regsvcs serverlibrary2.dll.
说明:机器上必须安装消息队列服务器。
二. 客户端
1.客户端代码
try
{
//用接口调用
ServerLibrary2.IQComponent IQC= (IQComponent)Marshal.BindToMoniker("queue:/new:ServerLibrary2.QCSimpleDemo");
int num=0;
num=int.Parse(this.textBox2.Text);
IQC.ComplicatedFunction(num);
Marshal.ReleaseComObject(IQC);
MessageBox.Show("转帐成功!!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
说明:Marshal.BindToMoniker 是System.Runtime.InteropServices下的一个方法。它获取一个指针。
Marshal.ReleaseComObject(IQC); 释放对象引用数
欢迎讨论: showstrong@hotmail.com
相关文章推荐
- 一个com+消息队列的例子
- 一个消息队列很好的例子
- 用消息队列编写一个客户端服务器通信的程序
- COM+系列——实战演练MSMQ(消息队列)(二)
- 一个轻便易用的消息队列
- [置顶] JBoss页面部署消息队列及相关例子
- 向消息队列发送一个消息(FIFO),OSQPost()
- uC/OS-II V2.86 发送和等待一个队列消息的工作原理
- windows每个线程一个消息队列吗?
- 一个自定义消息的例子
- EQueue - 一个纯C#写的分布式消息队列介绍2
- 等待一个消息队列中的消息,OSQPend()
- 一个线程创建之初是没有消息队列的
- 一个C#写的开源分布式消息队列(类RocketMQ)
- skynet源代码学习 - 从全局队列中弹出/压入一个消息队列过程
- Android GUI 单线程消息队列机制 —— 多线程GUI工具箱:一个破碎的梦
- 移动矩形代码和一个非常重要的windows消息队列机制的坑
- JMS P2P方式的消息发送/接收的一个简单例子
- 分享一个c#写的开源分布式消息队列equeue
- C# Redis消息队列例子