首页 新闻 搜索 专区 学院

在.NET环境下需要使用COM组件吗?

1
悬赏园豆:50 [已解决问题] 解决于 2009-11-05 09:25

一个组件如果使用它或都调用它的只是.NET,没有其它。那么有必要把这个组件做成COM组件吗?

做成COM组件有什么优点吗?

icewindq的主页 icewindq | 初学一级 | 园豆:120
提问于:2009-11-04 11:06
< >
分享
最佳答案
0

一般来说没有必要.当然,也有可能在遇到特定问题时,需要做技术选型.

com组件的优点,要从com的起源说起,就是MS为了支持跨平台的调用,解决

多种开发平台之间二进制不一致的问题.

做成com的话,你可以使用脚本语言调用,比如vba,js等.

如果是在纯.net环境下,有一种情况你需要考虑com,而且是进程外com,

那就是你的调用方需要在运行时连接到一个.exe进程,并访问它提供的方法接口.

当然,.net下制作进程外com难度很大,不建议使用.而我建议使用wcf发布你的exe程序的接口.

收获园豆:50
Launcher | 高人七级 |园豆:45045 | 2009-11-04 11:31
其他回答(2)
0

优势在于兼容性、可扩展性、高效率性、高透明性。

如果不是写商业性质的库(要求高度的稳定,升级版的兼容),一般情况下,根本不需要写成com,写成一般的dll实现重用就足够了,所以楼主没什么必要做成COm组件。

dege301 | 园豆:2825 (老鸟四级) | 2009-11-04 11:28
使用COM的一个很大问题就是:在部署更新时比较麻烦
支持(0) 反对(0) icewindq | 园豆:120 (初学一级) | 2009-11-05 09:27
0

Com也就是应用程序的对外接口,不同程序编程的语言不一样,为了让其他的程序如C# 也能实现访问,所有做成com。如果是dll的话,c#的dll只能c#程序访问!

希望这个回答你能满意

会游泳dě鱼 | 园豆:250 (菜鸟二级) | 2009-11-04 11:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册