您的位置:首页 > 其它

使用Msmq触发器

2012-11-14 17:45 274 查看



MSMQ之触发器

使用 msmq 中的trigger 可以主动启动Exe程序并设定要传什么参数,比自己写代码轮询一个queue
中的消息,则方便很多。


安裝 MSMQ 、 MSMQ Triggers




设定MSMQ 与 MSMQ Triggers

1.打开【计算机管理】->【服务与应用程序】->【消息队列】
2.新建【专用队列】



3.新建规则


,名为“TriggerTestRule”


,规则条件可以为空。


,选择要触发的应用程序。


,设置要传的参数。

4.新建触发器,并附件刚才新建的规则


 


  


程序代码

1.发送消息
using System;
using System.Messaging;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
try
{
var myMessageQ = new MessageQueue(@".\Private$\MqTriggerTest");
var mt = new MessageQueueTransaction();
mt.Begin();
var message = new Message
{
Formatter = new ActiveXMessageFormatter(),
Body = @"Msmq触发器测试消息123!",
Label = "test123"
};
myMessageQ.Send(message, mt);
mt.Commit();
myMessageQ.Close();
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
}
}
}


2.触发程序

using System.IO;

namespace MsmqTriggerExe
{

internal class Program
{
private static void Main(string[] args)
{

using (var writer = new StreamWriter(File.Open(@"d:\msmq.txt", FileMode.Append)))
{
for (int i = 0; i < args.Length; i++)
{
writer.WriteLine("{0} - {1}", i, args[i]);
}
writer.WriteLine();

writer.Flush();
}

}
}

}


3.接收的消息


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息