com+和消息队列结构是:
首先服务器端安装com+和消息队列服务器,而客户端安装com+服务的代理和消息队列服务器。
com+和消息队列的工作过程是:
客户端构造成个消息放到本机的发送消息队列中,客户端发送消息队列负责发该消息发送到com+服务器上,
com+ 服务器消息队列接受客户端的消息。com+负责侦听消息,如用消息到达,就处理。
代码如下:
一.
1.服务器端.新建类库项目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
浙公网安备 33010602011771号