首页 新闻 搜索 专区 学院

c#开发的windows应用程序之间通信有哪些常用方式?希望有相关经验的朋友给点思路 十分感谢

0
悬赏园豆:5 [已关闭问题]

目标需求:

我这里有两个客户端应用c1和c2,c1需要通过c2获取一部分数据。

请问,类似的场景,通常情况下通过什么方式来处理?

谢谢各位:)

专职天使的主页 专职天使 | 初学一级 | 园豆:85
提问于:2010-03-11 18:18
< >
分享
其他回答(5)
0

c1需要通过c2获取一部分数据,最直接的做法,c1和c2通过TCP来进行数据处理。

不过在.NET中给咱们提供了全能的WCF,所以这里可以使用WCF来做,让c2作为WCF的宿主,然后c1通过WCF来和c2交互。

还有你可以使用MSMQ来搞,呵呵!

西越泽 | 园豆:10633 (专家六级) | 2010-03-11 18:54
0

你可以通过共享内存区操作的方法来访问数据。

既是c1,c2将要共享的数据写入指定的系统内存区,可以随意读取。

第二种方法是通过Remoting访问。

不太建议WCF跑进程间这样的小型应用,因为很麻烦,效率不见得比以上高多少。

kenter | 园豆:210 (菜鸟二级) | 2010-03-11 20:58
你可以去MSDN上看下关于WCF和Remoting之间的性能比较的文章。
支持(0) 反对(0) 西越泽 | 园豆:10633 (专家六级) | 2010-03-11 21:07
0

WCF或者Remoting的方式

风影极光 | 园豆:1573 (小虾三级) | 2010-03-11 21:22
0

推荐用WCF

查尔斯 | 园豆:3832 (老鸟四级) | 2010-03-12 02:20
0

1、也可以用TCP(UDP)进行通讯。用C2做临时服务,C1去连接。

2、或者C2使用固定的名称,C1用Api去找C2的句柄,然后用postmessage传递。

 

PS:如果没有固定的服务端,不推荐WCF。

 

我正在做winform的插件式开发,其中就有通讯,有空交流QQ:490521881。

dfsoft | 园豆:205 (菜鸟二级) | 2010-03-12 09:19
0

remoting,其实WCF也是对remoting的封装利用

小伦 | 园豆:70 (初学一级) | 2010-03-12 13:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册