我的问题只是关于术语。 “COM Interop”是否仅指在.NET项目中使用COM组件或对象?
什么术语最适合用于制作.NET程序集并设计和配置它以用于COM应用程序(例如VB6或VBA)?
答案 0 :(得分:2)
组件对象模型(COM)是一个 软件的二进制接口标准 微软在美国推出的组件 它用于实现进程间通信和动态 在很大范围内创建对象 编程语言。 COM这个词是 经常在Microsoft软件中使用 发展工业作为一把伞 包含OLE,OLE的术语 自动化,ActiveX,COM +和DCOM 技术。
因此 COM 对象不依赖于语言。这是一个通讯协议 所以使用这个协议的任何东西都是一个COM对象。
您可以使用 .NET 框架创建支持COM通信的dll。
COM Interop 是.NET用于包装COM通信的接口,因此您可以编写常规.NET代码,而无需弄乱COM协议和声明。当您将COM对象引用到项目时,Visual Studio可以创建Interops。
COM Interop是一项包含的技术 在.NET CLR中启用COM 对象与.NET对象交互, 反之亦然。
答案 1 :(得分:0)
这类通常被称为CCWs COM可调用包装器 COM Interop同时指:使用.Net的COM和通过COM使用.Net。
答案 2 :(得分:0)
COM interop
通常称为 .NET绑定程序集到COM DLL。例如,当您在.NET项目中添加对COM DLL 的引用时,它就会被创建。
答案 3 :(得分:0)
据我所知,COM Interop将使用.NET中的COM或其他方式。
现在您有两个选项可以使.NET程序集 COM可见请参阅: "Register for COM Interop" vs "Make assembly COM visible"
当您想使用COM库时,Visual Studio将使用Tblimp.exe并生成可在.NET中使用的互操作程序集。对于其他方式的过程,有Tblexp.exe
This somewhat old article涵盖了.NET中的COM Interop。 (注意,它讨论了Iterop两种方式)
请记住.NET4 has some nice new features使用来自.NET的COM。