实现灵活性时,到底应该使用COM组件还是DLL?
在实现灵活性时,比如实现一个基本框架,以后的人事部、商务部等都以组件形式提供,将基本框架支持的COM接口写成SDK开发文档,以使得第三方开发商可以为此基本框架开发任意插件(如:财务部)。
问题是此插件使用COM实现还是原始的DLL?如3DMAX、Winamp都使用Dll的形式,虽然它们也都注册了COM组件,但你将它们插件目录下的DLL移走,它们将不会显示那个插件的功能。
我并不是想要实现这个效果,只是想要一个标准,即使COM组件完全包含DLL,但功能不可以过量,就好象C++中函数的const修饰符,只是语义上的需求,你完全可以在你的成员函数const CString& GetName() const{...}中将后面的const去掉,但它不可以去掉一样。