可能是我表述得不够清楚:
详细如下:
可以实现windows服务实现往消息队列中写入消息,也可实现读消息队列中的消息。
问题在于:外部应用程序如何向windows服务写入内容呢?
是不是通过接口?
请大家帮帮忙,给个主意,强烈等待中!
详细如下:
可以实现windows服务实现往消息队列中写入消息,也可实现读消息队列中的消息。
问题在于:外部应用程序如何向windows服务写入内容呢?
是不是通过接口?
请大家帮帮忙,给个主意,强烈等待中!
解决方案 »
- 请教一个在ASP.NET网页里面伪造Referer的问题!
- WPF 编辑GridViewColumn问题
- ajax方式获取记录ID的问题
- 关于Asp.net的三层架构
- 求一个可用的VS2005自带的C#测试项目的模板
- 如何把asp.net(vb)从数据库中读取的数据写成xml,以供其他aspx文件通过xmlhttp获得数据?
- asp网站、远程多个电脑同时连接该网站,同一个功能,读取的数据却不一致!
- ====关于InfoPath控件于后台代码绑定(全代码)====~~~除了睡觉我都在等.....
- 请问大家,在Web.config文件中添加配置节,为什么抱错呢?这个xml文件没什么错呀?
- 虚拟机无法访问主机网站
- 在B/S模式中,C# treeView 控件棘手问题 高手请进!!!!
- datalist的用法?
本机上的其它应用程序(本人写的),需要向消息队列中写入消息,为了统一管理,借道这个windows服务。其它应用程序向windows应用程序写入内容,windows服务中统一将内容写入本机的消息队列,再异步将消息发出。
我也看了MessageQueue,关键是消息的发送与接收已经实现,现在苦恼的是其它应用程序如何与这个windows服务交互?
比如 sql server 2000, window service 從messagequeue 裡讀到有 message 時將它寫入 sql, 其他的程序就讀這個 sql 了.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/csharpmsmq.asp
http://www.vchome.net/dotnet/dotnetdocs/dotnet7.htm
http://www.codeproject.com/csharp/MSMQChannelNew.asp
//==>
那加接口不會在 window service 裡加.
接口應該是在那個外部程序裡.
MSDNMessageService我也下载安装了,不明白的是MessageInterface中写入的数据被MessageService调用?MSDNMessageService整得太复杂了?to SVG(ben):
//==>
那加接口不會在 window service 裡加.
接口應該是在那個外部程序裡.
我目前采用的是外部程序向消息队列写入消息;windowsserivce再异步读出队列中的消息,做下一步处理。希望完美的处理方法是:外部程序只调用一个统一的接口(最好由windowsserivce提供)来写入消息,差异就在这里?
另外我本人用c#实现异步消息队列时发现:
关闭windowsservice时,会将正receive的那条消息丢掉。目前解决方法:写入消息同时向数据库插入记录,接收时再删除数据库中此条记录;再定时取在数据库中但在消息队列中没有的消息,进行额外处理。缺点:效率低下。不知有没有更好的方法? 看到众位大侠在关注此贴,所以在此一并发表,但若解决,别开贴100分重酬,立即兑现!
当时是使用飞天短信平台我是直接写进 db 里就ok, 飞天会去读 db 的了
效率也不低
只怪我太笨,msdnmessageservice都已实现了,可是硬是把自己给看晕了!仰天长啸!
参考_pipe:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_crt__pipe.asp
你的其他的应用程序可以通过socket发消息,这个消息的头表示是那个应用程序(当然socket要你自己写)
windows service循环检测socket发来的消息,并将信息解包存放到消息队列中,楼主以为如何?
没有socket编程经验,目前采取了一条比较笨的方法:其它应用程序各自为战,向消息队列发送消息;windowsservice循环读出消息,再进行下一步的处理。
关于直接用接口实现,研究了两天,可能是功力太浅,无法实现;退而求其次,还是用我原先的老办法
不过,对几位的关注,深表感谢!