描述:
1
COM里的DLL(进程内组建)有FACTORY,即使从新获得新版本的dll,程序也不需要从新编译。
而动态链接库大多得从新编译了
2
COM从注册表中寻找组建
DLL得指定文件
大家看我说得对否,还有得请补充!
解决方案1:
COM中间有标准接口IUNKNOWN
不知道DLL中间有没有
动态库本身都是一样的,只是COM的动态库按照协议暴露了几个标准接口
在动态库被调用的方式上,普通的动态库由你自己加载,而COM的动态库由系统根据你CoCreateInstance传入的参数找到已经在注册表中注册的COM动态库来进行加载
[引用楼主]
1
COM里的DLL(进程内组建)有FACTORY,即使从新获得新版本的dll,程序也不需要从新编译。
而动态链接库大多得从新编译了
===========
只要你的DLL的接口没变, 你的EXE一样不需要重新编译。这一点和COM是类似的。我的工程就是如此。
It's not a must to have a class factory while implementing a COM component.
You can implement a COM component either by class factory or by IUnknown interface
COM必须导出那几个标准的导出函数。普通DLL就没有什么限制了!
解决方案6:说的对