调用非托管 C++ C# 中的 COM 对象

发布于 2024-09-08 04:02:06 字数 324 浏览 1 评论 0原文

我正在阅读这篇 MSDN 文章,其中涉及围绕 COM 对象创建 .NET 托管包装器。他们提到了两种方法,要么使用 tlbimp 自动生成包装器,要么手动创建 C# 接口和虚拟类。

但是,在我们的例子中,我们有一个包含 COM 接口声明(我们不使用任何类型库)的 ODL 文件,该文件在 C++ 端由 IDL 编译器编译?难道ODL文件不能直接被.NET使用吗?或者在这种情况下我们仍然必须使用文章中提到的方法之一?

I was reading this MSDN article which deals with creating a .NET managed wrapper around a COM object. They mention two approaches, either to auto-generate the wrapper using tlbimp, or manually to create a C# interface and dummy class.

But what about in our case where we have an ODL file containing a COM Interface declaration (we don't use any type libraries), which on the C++ side is compiled by the IDL compiler? Is there no way the ODL file can be used directly by .NET? Or in this case do we still have to use one of the approaches mentioned in the article?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苏别ゝ 2024-09-15 04:02:06

我认为您无法直接使用 ODL 文件:您可以 从 ODL 文件生成类型库,然后将该类型库提供给 tlbimp.exe。

I don't think you'll be able to use the ODL file directly: you can generate a type library from an ODL file and then give that type library to tlbimp.exe.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文