2008-10-11 51 views
6

我把引号“更好”,因为它是一个定性的问题。我一直在现在写内COM DLL的一对夫妇多年,最近才临到,并成功使用该标准的DLL类型库与概念。这是“好”:COM DLL或标准DLL与类型库?

是否有任何令人信服的理由使用COM DLL而不是DLL + Typelib?当然,你不能用DLL + Typelib来做DCOM,但这是唯一的原因吗?我已经在Visual C/C++ 6,Compaq Visual Fortran,Delphi,Visual BASIC 6,ActiveState Perl和一些其他程序中编写了COM DLL。我用Visual C/C++ 6,Delphi,Ada和其他几个编写了标准的DLL。我为我自己的一些标准DLL和第三方DLL编写了typelibs。这个问题最初是在VB6原始的Delphi DLL + Typelib重新实现的情况下编写的。

+0

你在写什么语言?它是C++吗? – 2008-10-11 15:52:47

回答

3

如果您将来希望将COM组件迁移到托管代码,则TypeLib也很重要。或者让托管代码与COM组件进行交互。

对于typelib,有很多工具可以自动将您的COM签名转换为.Net接口和类型。这可以通过手工完成,但是对于大型项目来说,这当然是一个巨大的节省时间。

+0

Typlib早于.NET早已被应用于许多其他环境中,例如VB,甚至在某些情况下甚至是C++/ATL – 2008-10-11 16:20:41

0

这真的取决于我会考虑的组件的客户端。