COM快速入门

来源:互联网 发布:cactiez mysql 密码 编辑:程序博客网 时间:2024/04/29 21:38

Component  Object  Model (COM 组件对象模型 )

1.COM是一种跨应用和语言共享二进制代码的方法,与C++ 不同它提倡源代码重用。

eg:ATL 活动模板库,支持利用C++语言编写ASP代码以及其他ActiveX程序。通过活动模板库,可以建立COM组件,然后通过ASP页面中的脚本对COM对象进行调用。这种COM组件可以包含属性页、对话框等控件。

源代码级重用虽然好,但只能用于C++。它还带来了名字冲突的可能性,更不用说不断拷贝代码而导致工程膨胀和臃肿。

2.Windows使用DLLs在二进制级共享代码。这也是windows程序运行的关键——重用kernel32.dll,user32.dll等。但DLLs是针对C接口而写的,它们只能被C或理解C调用规范的语言使用。由于编程语言负责实现共享代码,而不是由DLLs本身。这样的话,DLLs的使用受到限制。

COM通过定义二进制标准解决这些问题,即COM明确指出二进制模块(DLLs和EXEs)必须被编译成与指定的结构匹配。这个标准也确切规定了在内存中如何组织COM对象。



0 0
原创粉丝点击