com组件-COM组件和NET有什么不同?

问题描述

COM组件和NET有什么不同?

1、我用VS2012 - MFC写的程序,设置下,就能在未装NET框架的XP使用,不是说windows操作系统的各版本内核不同,才推出的net框架吗?

2、COM和NET有什么不同之处?

3、学习COM现在还有用吗?如果我只想调用别人的COM组件,不想自己写COM组件是不是就不用学了?

4、如果还得学COM的话,因该学MFC自带的COM支持,还是学ATL库?

5、DLL不能代替COM思想吗?我听说COM是种思想,支持DLL。可DLL不也支持各种语言之间调用吗?为什么还需要COM呢?

6、COM和COM+有什么不同,COM+和NET有什么区别?

解决方案

从Windows2000开始,内核都是一样的,只是版本不同。
。NET是上层应用,在系统API之上又封装了一层;
很多编程操作都简化了,但也同样失去了系统的API的灵活性;
COM组件依然有它的应用场景,只是越来越小了;
要学习COM组件的话,建议还是学习ATL;
COM,即组件对象模型,是关于如何建立组件以及如何通过组件建立应用程序的一个规范,说明了如何可动态交替更新组件。
COM+并不是COM的新版本,我们可以把它理解为COM的新发展,或者为COM更高层次上的应用。COM+的底层结构仍然以COM为基础,它几乎包容了COM的所有内容。有一种说法这样认为,COM+是COM、DCOM和MTS(Microsoft Transaction Server)的集成,这种说法有一定的道理,因为COM+确实综合了这些技术要素。但更重要的一点是,COM+倡导了一种新的概念,它把COM组件软件提升到应用层而不再是底层的软件结构,它通过操作系统的各种支持,使组件对象模型建立在应用层上,把所有组件的底层细节留给操作系统。
COM和COM+是二进制的文件,不依赖框架;。NET文件是中间码,需要框架解释执行。

解决方案二:


为了回答你的问题,账户都封了。不敢贴文字,放在图里吧。

解决方案三:

net是一套平台框架,这样让你再Windows上面开发的程序可以方便发布到其它用户的Windows上。
而com是一套组件技术,实现接口开发。
com技术在Windows上还是使用很广,不如office,wmi等都有。
如果调用,那就简单,比较容易,而如果自己开发就要复杂多。
mfc,atl的都可以学习一下。
dll技术比com简单,所有使用更广,微软想推广com当初,但它技术门槛还是高了点,没dll使用广泛。
com一般是本地,com+是跨机器。

时间: 2024-08-03 09:55:22

com组件-COM组件和NET有什么不同?的相关文章

PHP开发框架Yii Framework教程(22) UI组件 Zii组件简介

前面介绍了Yii框架支持的部分UI组件,除了前面介绍的UI组件外,Yii框架还提供了Zii组件库,包括列表视图ListView,表 格视图GridView,此外还包括一些基于JQuery的UI组件,如AutoComplete,DataPicker, Button, Drag 和 Drop等,Zii组件主要 定义在包zii.* ,zii.widget.* 开发框架Yii Framework教程(22) UI组件 Zii组件简介-yii2 user组件"> 由于其中部分UI组件和数据源(Dat

ASP 组件|无组件上传

ASP 组件|无组件上传 最后更新:2006-08-25 21:22 纯Javascript打造的ASP上传组件,支持多文件上传.进度条.数据库存放和文件系统存放 组件下载地址(为方便版本同步,未在此处上传附件): http://www.zope.org/Members/Rimifon/FyUpload.sct(右键下载) 相关说明:有组件上传方式请右键"FyUpload.sct"注册,然后可以使用: Server.CreateObject("Rimifon.Upload&q

将函数作为子组件的组件

本文讲的是将函数作为子组件的组件, 原文地址:Function as Child Components 原文作者:Merrick 译文出自:掘金翻译计划 译者:rottenpen 校对者:loveky avocadowang 我最近在 Twitter 上发起了关于高阶组件和将函数作为子类的组件的投票,得到的结果让我很意外. 如果你不知什么是"函数作为子组件的组件",我试图通过这篇文章告诉你: 函数作为子组件的组件是什么. 它为什么有用. 我只想享受分享的快乐,而不是收获一些 Twitt

执行计划组件、组件、老化

原文:执行计划组件.组件.老化 一.执行计划缓冲 优化器生成的执行计划保存在SQL Server内存池中的一个特别部分,被称为计划缓冲或过程缓冲.过程缓冲是SQL Server缓存的一部分.在缓冲中保存计划可使SQL Server避免在重新提交相同的查询时再次通过整个查询优化过程运行.SQL Server支持不同的技术,如:计划缓冲老化,计划缓冲类型来增加缓存的计划的可重用性.它还保存两个被称为hash和查询计划hash的二进制值. 二.执行计划组件 优化器生成的执行计划包含两个组件: 查询计划

Vue.js每天必学之组件与组件间的通信_javascript技巧

什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展. 使用组件 注册 之前说过,我们可以用 Vue.extend() 创建一个组件构造器: var MyComponent = Vue.extend({ // 选项... }) 要把这个构造器用作组件,需要用 `Vue.compone

如何让uml组件图组件中的文本换行且美观。

问题描述 如何让uml组件图组件中的文本换行且美观. 实现不了自己想要的那种.如下两图,要像书上的那样,请说详细一些. 解决方案 文本组件的换行细节

jQuery自定义组件(导入组件)_jquery

1.组件js (function($){ //自定义去除字符串两边空白 String.prototype.trim=function(){ return this.replace(/(^\s*)|(\s*$)/g, ""); } //自定义导入组件 $.fn.customImport = function(methodOroptions,value){ if(typeof methodOroptions == "string"){//存在方法时,调用方法 retur

PHP开发框架Yii Framework教程(10) UI组件 自定义组件

在介绍Yii内置UI组件之前,先介绍一下如何自定义组件,这样也有助于理解CWidget的用法,自定义组件就是重载 CWidget 的init() 和 run() 方法. class MyWidget extends CWidget { public function init() { // 此方法会被 CController::beginWidget() 调用 } public function run() { // 此方法会被 CController::endWidget() 调用 } } 本

com组件-Com组件调用C++回调函数,如何传参

问题描述 Com组件调用C++回调函数,如何传参 一.com组件接口函数的实现: 1.成员 private: //回调函数指针 CComPtr m_pChangeTempCallbackFun;//更换模板回调函数 2.函数 bool CDllHelper::SetCallBackFun(VARIANT vaJsFun) { if(vaJsFun.vt != VT_DISPATCH) { return false; } m_pChangeTempCallbackFun = vaJsFun.pdi