繁体   English   中英

COM Interop .NET组装-术语问题

[英]COM Interop .NET Assembly - A Terminology Question

我的问题只是关于术语。 “ COM Interop”是否仅指在.NET项目中使用COM组件或对象?

哪个术语最适合用于制作.NET程序集以及设计和配置它以用于COM应用程序(例如VB6或VBA)?

COM对象

组件对象模型(COM)是Microsoft在1993年引入的用于软件组件的二进制接口标准。它用于以多种编程语言实现进程间通信和动态对象创建。 COM术语在Microsoft软件开发行业中经常被用作涵盖OLE,OLE Automation,ActiveX,COM +和DCOM技术的总称。

因此, COM对象与语言无关。 这是一种通信协议。
因此,使用此协议的任何东西都是COM对象。

您可以使用.NET Framework创建支持COM通信的dll。

.NET用来包装COM通信的接口是COM Interop ,因此您可以编写常规的.NET代码,而不必弄乱COM协议和声明。 当您将COM对象引用到项目时,Visual Studio可以创建Interop。

COM Interop是.NET CLR中包含的一项技术,使COM对象可以与.NET对象进行交互,反之亦然。

此类通常称为CCW的COM可调用包装器。
COM Interop意味着:从.Net使用COM和通过COM使用.Net。

通常将COM interop称为.NET绑定程序集与COM DLL的结合 例如,当您在.NET项目中添加对COM DLL的引用并被创建时。

据我所知,COM Interop将使用来自.NET的COM或其他方式。

现在,您有两个选择可让您的.NET程序集COM可见
“注册COM Interop”与“使程序集COM可见”

当您要使用COM库时, Visual Studio将使用Tblimp.exe并生成可在.NET中使用的互操作程序集。 对于该过程的另一种方式Tblexp.exe

这篇较旧的文章涵盖了有关.NET中COM Interop的很多知识。 (注意,它同时讨论了Iterop)

请记住, .NET4具有一些不错的新功能,可以使用来自.NET的COM。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM