COM组件与.NET技术对比

一、元数据

  1. 在COM中所有组件信息都存储在类型库中。
  2. .NET中信息都存储在数据集中。
  3. 一些COM组件有类型库,一些却没有(如VB编的,因为C++可以用IDL——接口定义语言表述接口和方法,而VB不行)。没有的话需要用C++头文件来表述接口和方法。

二、释放对象

  1. .NET通过垃圾回收器释放对象。
  2. COM组件通过引用计数管理对象,如果引用数降为零了就释放对象。

三、接口

COM有三种接口:

  1. 定制接口:IUnknown + 自定义接口虚方法表
  2. 分派接口:IDispatch
  3. 双重接口:IUnknown + IDispatch + 自定义接口虚方法表

四、方法绑定

  1. .NET前期绑定方法:虚方法表
  2. .NET后期绑定方法:反射
  3. COM前期绑定方法:设计时通过GetIdsofNames()获取方法ID,运行时只需调用Invoke()即可。
  4. COM后期绑定方法:运行时调用GetIdsofNames()获取方法ID,再调用Invoke()。

五、数据类型

对于分派接口和双重接口,COM使用的数据类型局限于一个自动兼容的类型列表。VARIANT是许多类型(如BYTE、INT、LONG)的组合,与.NET中Object对应。

 

六、注册

.NET区分私有程序集和共享程序集。每个COM组件都进行了注册配置,是全局可用的。

 

 

   ----学习笔记,请多多指教。

 

转载于:https://www.cnblogs.com/xufzu123/archive/2010/06/18/1760529.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299242.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zabbix如何监控Windows机器

最近一直在研究Zabbix监控Windows机器,涉及到如何快速安装agent,如何修改和完善windows监控模板等等。想把自己的经验给大家分享一下,希望对大家有所帮助。1)安装agent客户端 首先分享一下用bat写的自动化安装Windows机器的agentd安装脚本,脚本里面的tc…

如何写出高质量代码

教你写出高质量代码的方法网络上有很多,比如设计原则、设计模式、重构技巧、命名规范等,以上这些本文统统都不会讲。个人理解高质量代码一定是结合业务并深度思考过的产出。很多人拿到需求后,业务和流程还没理顺后就直接编码,然后…

mysql的查表语句_mysql查表语句_MySQL

bitsCN.commysql查表语句[sql]describe table_name;这个命令用来显示一个表格的结构------------------------------------------------| Field | Type | Null | Key | Default | Extra |------------------------------------------------| ID | int(11) | NO | PRI | NULL | …

AOP技术研究 再续

第四部分 .Net平台AOP技术研究 4.1.Net平台AOP技术概览 .Net平台与Java平台相比,由于它至今在服务端仍不具备与unix系统的兼容性,也不具备类似于Java平台下J2EE这样的企业级容器,使 得.Net平台在大型的企业级应用上,常常为人所诟…

震惊!原来现在无所不能的世界主人翁,早已在三千年前就悄然出现!

▲ 点击查看早在春秋时代,鲁班作为机械工程师的祖师爷,就极其擅长且痴迷于一些古怪的机械装置,因此,他除了发明了墨斗、曲尺这些正儿八经的东西之外,最出名的就是用木头,发明了一只据说能在天上飞三天而不落…

ASP.NET MVC 1.0 Result 几何?

Action的返回值类型到底有几个?咱们来数数看。 ASP.NET MVC 1.0 目前一共提供了以下十几种Action返回结果类型: 1. ActionResult(base) 2. ContentResult 3. EmptyResult 4. HttpUnauthorizedResult 5. …

针对SharePointFarm场时安装部署OWA的步骤

下面文章列出针对SharePointFarm场时安装部署OWA的步骤: http://blogs.technet.com/b/meamcs/archive/2013/03/27/office-web-apps-2013-multi-servers-nlb-installation-and-deployment-for-sharepoint-2013-step-by-step-guide.aspx转载于:https://www.cnblogs.co…

mysql双机互备linux成功的_配置MySQL双机热备 - Linux服务器MySQL双机热备份试验_数据库技术_Linux公社-Linux系统门户网站...

二、配置MySQL双机热备传统模式都是采用MySQL双机互备,至于双机热备我搜索了大量的精华帖子都没有发现安装配置文档。故我的一个想法产生了:当建立新的数据库时,默认会建立到/usr/local/mysql/data这里,如果能改掉默认配置文件my.…

万字总结:开源软件通识基础课第三周知识点总结

我们在前两周的课程上(第一周、第二周),系统讲授了 FOSS 的课程内容,第三周,我们开始进入 COSS(商业开源)的部分。本导学班在调研全球开源教育与课程的基础上,通过收集、整理、理解、…

CISCO IOS SLB服务器负载均衡

CISCO IOS SLB在多台服务器之间智能地均衡TCP/IP流量,是一种4层或7层交换功能。目前只有catalyst 6500支持。推荐在在catalyst 6500交换机中选择ACE服务模块,不仅能提供16Gbit/s的性能,而且还能通过SSL加密和双向内容检查实现安全性。优点&a…

掌握深度学习,为什么要用 PyTorch、TensorFlow 框架?

全世界只有3.14 % 的人关注了爆炸吧知识自从2012年深度学习再一次声名鹊起以来,许多机器学习框架都争先恐后地要成为研究人员和行业从业者的新宠。面对如些众多的选择,人们很难判断最流行的框架到底是什么。在某些情况下,深度学习或深度迁移学…

SharePoint 2010 中的BCS身份验证模式

BCS(Business Connectivity Services)是SharePoint 2010中用于替换原先Microsoft Office SharePoint Server 2007企业版的业务数据目录(Business Data Catalog ,简称BDC)的一项新服务。 BCS相比BDC而言有许多改进&…

SD卡读写扇区注意事项(转)

源:http://blog.163.com/zhaojun_xf/blog/static/30050580201151410635516/ 在调试SD卡时,大家都喜欢使用扇区进行验证。也就是说,一般都是通过读写扇区数据进行比较,或者读取第0扇区的数据,在通过WinHex软件打开启动扇…

mysql用in查询list_Mysql优化器对in list的处理

select * from table where id in (....)这样的查询,是走范围索引还是走等值索引?select * from table where key_part1 in (....) and key_part2XX;这样的查询,第二部分还走不走索引?测试目的,想知道,MYSQ…

开源软件通识基础:第二周课程回顾与总结

接第一篇《开源软件通识基础:第一周课程回顾与总结》,本文为第二周课程内容的回顾与总结。本导学班在调研全球开源教育与课程的基础上,通过收集、整理、理解、拓展国际最新的前沿开源课程,采取众创的模式,由 X-lab 核心…

心情分享

很快,毕业半年多了也工作半年了。回过头想想这段时间更多的是思考,想说的是自己的认识,能做的只有更加的努力。现在都把大学生和民工做比较,甚至有人说大学生还不如民工。是对还是错?谁的错,没有衡量的依据…

mysql数据连接查询_mysql数据库 连接查询

左连接:select 列1,列2,列N fromtableA left join tableBon tableA.列 tableB 【此次表连接成一张大表,完全当成普通表看】where group ,having...照常写例:select goods_id,goods.cat_id,cat_name,goods_name,sho…

在DataGrid中合并单元格行

最近在做项目的时候经常遇到要合并单元格的情况,发现这个东西.net中并没有现成的方法,研究了一下,总结了两种方法。 这个主要都是行合并的,有以下两种情况 1、多行合并为一行,其中将某个或某几个单元格的内容合并起来 …

封装log4cp p

log4cpp 是参考 log4j 所写的 c 版本的写 log 的库。可以在这里下载http://log4cpp.sourceforge.net/我的使用方法是:1,定义了一个 _LOG4CPP 宏,用来打开或关闭 log4cpp 的调用,以便在完全不需要 log 的情况下可以运行&#xff0c…

这些口碑炸裂的BBC神片,就是给孩子最好的生命教育

全世界只有3.14 % 的人关注了爆炸吧知识对孩子来说,好的纪录片就像是打开了一扇新世界的大门,让他们了解了更多大自然的奇妙之处。所以这次我们精心挑选了几部适合儿童观看的纪录片,其中绝大多数是导演专门为孩子拍摄的,大家可以在…