COM技术

来源:互联网 发布:淘宝店铺怎么图片保护 编辑:程序博客网 时间:2024/05/04 09:30
 

1.COM定义

COM是一种技术标准,其商业品牌则称为Activex

1)COM 组 件 是 遵 循COM 规 范 编 写、

2)以Win32 动 态 链 接 库(DLL) 或 可 执 行 文 件(EXE) 形 式 发 布 的 可 执 行 二 进 制 代 码,

3)能 够 满 足 对 组 件 架 构 的 所 有 需 求。 遵 循COM 的 规 范 标 准, 组 件 与 应 用、 组 件 与 组 件 之 间 可 以 互 操 作, 极 其 方 便 地 建 立 可 伸 缩 的 应 用 系 统

2.微软的Visual C++支持三种DLL,

1)它们分别是Non-MFC Dll(非MFC动态库):

Non-MFC DLL指的是不用MFC的类库结构,直接用C语言写的DLL,其导出的函数是标准的C接口,能被非MFC或MFC编写的应用程序所调用。

2)Regular Dll(常规DLL):

Regular DLL:和下述的Extension Dlls一样,是用MFC类库编写的,它的一个明显的特点是在源文件里有一个继承CWinApp的类(注意:此类DLL虽然从CWinApp派生,但没有消息循环),被导出的函数是C函数、C++类或者C++成员函数(注意不要把术语C++类与MFC的微软基础C++类相混淆),调用常规DLL的应用程序不必是MFC应用程序,只要是能调用类C函数的应用程序就可以,它们可以是在Visual C++、Dephi、Visual Basic、Borland C等编译环境下利用DLL开发应用程序。常规DLL又可细分成静态链接到MFC和动态链接到MFC上的。常规DLL又可细分成静态链接到MFC和动态链接到MFC上的。

3)Extension Dll(扩展DLL):

与常规DLL相比,使用扩展DLL用于导出增强MFC基础类的函数或子类,用这种类型的动态链接库,可以用来输出一个从MFC所继承下来的类。扩展DLL是使用MFC的动态链接版本所创建的,并且它只被用MFC类库所编写的应用程序所调用。例如你已经创建了一个从MFC的CtoolBar类的派生类用于创建一个新的工具栏,为了导出这个类,你必须把它放到一个MFC扩展的DLL中。扩展DLL 和常规DLL不一样,它没有一个从CWinApp继承而来的类的对象,所以,开发人员必须在DLL中的DllMain函数添加初始化代码和结束代码。

 

 

 

原创粉丝点击