gpt4 book ai didi

c++ - 在非托管 C++ 中使用 COM dll

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:56:28 25 4
gpt4 key购买 nike

我对 Windows 编程还是有点陌生​​,有时我会发现文档和教程让我感到困惑,有时甚至相互矛盾,但我希望我能理解一些道理,并在我错误的地方得到纠正。我正在使用一个 API,其中包含的文档很差。它由许多他们设想的DLL组成,作为对VB项目的引用添加(大多数用户是生物学家/化学家,对其他语言不是很熟悉,因此他们推荐VB)。一开始我以为它们是 .NET dll,但它们不能用 regasm 注册,也不能用它生成 tlb 但可以用 regsvr32 注册,所以我想这意味着它们是 COM dll ...如果我错了请纠正我.

我的理解是,由于这公开了 COM 对象,因此我应该能够将其与 .NET 语言和未管理的 c++ 一起使用。我在 C# 中使用过它,但我也想在 unmanged c++ 中使用它。我看过这样的教程: http://cppkid.wordpress.com/2009/01/...nmanaged-code/导入类型库但我没有这个,它没有随 API 一起提供。但是使用 OLE 查看器我能够看到它们可用(嵌入在 dll 中?)。我想知道是否有人知道如何从这里开始实际使用 C++ 中的 dll。

欢呼并感谢您的帮助。

最佳答案

我想实现这一目标的最简单方法是使用 #import指令:

#import <mygreatlib.dll>

不过还有其他方法,比如使用 #importProgID dll 的入口点类,或使用 MFC type library wizard

关于c++ - 在非托管 C++ 中使用 COM dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9182333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com