unregister net con dll typelib com

net - ¿Cuál es "mejor": DLL COM o DLL estándar con Typelib?



regasm unregister (2)

Pongo "mejor" entre comillas porque es una pregunta cualitativa. He estado escribiendo COM DLL durante un par de años y solo recientemente encontré y utilicé con éxito el DLL estándar con el concepto de Typelib.

¿Hay alguna razón de peso para usar DLL COM en lugar de DLL + Typelib? Por supuesto, no se puede hacer DCOM con un DLL + Typelib, pero ¿es esa la única razón?

EDITAR He escrito COM DLL en Visual C / C ++ 6, Compaq Visual Fortran, Delphi, Visual BASIC 6, ActiveState Perl y algunos otros. He escrito DLL estándar en Visual C / C ++ 6, Delphi, Ada y algunos otros. Escribí typelibs para algunas de mis DLL estándar y también para DLL de terceros. La pregunta se escribió originalmente en el contexto de una actualización de Delphi DLL + Typelib de un original de VB6.


Los TypeLib también son importantes si alguna vez desea migrar componentes COM al código administrado en el futuro. O el código administrado interactúa con los componentes COM.

Con un typelib hay muchas herramientas que traducirán automágicamente sus firmas COM en interfaces y tipos de .Net. Esto se puede hacer a mano, pero con un gran proyecto es sin duda un gran ahorro de tiempo.


Realmente depende de los clientes del componente que pensaría.