我有一个C++ COM dll
,我已将其注册到regsvr32
。我想在我的代码中使用dll的函数和类。不幸的是,我没有任何.h
并且它没有.tlb
文件。我有文档如何使用函数和类,但没有关于如何将DLL链接到我的项目的信息,所以我可以使用它。我是使用外部COM接口的新手,所以我不太能找到这些信息。
我已经尝试了#import "example.dll"
(在项目文件夹中插入了dll,但它看起来不起作用我无法加载DLL错误。我的程序是混合CLR /非托管C ++。
有什么建议吗?
提前致谢
答案 0 :(得分:0)
如果提供了足够的信息,您可以自己在头文件中定义接口。我建议使用#import
导入现有的COM类型库,并调查生成的.tlh
文件以获取创意。例如,对于带有函数的简单接口,代码如下所示:
struct __declspec(uuid("Interface-Guid-with-Dashes")) IInterfaceName : IUnknown
{
virtual HRESULT __stdcall get_Value (/*[out,retval]*/ long * result) = 0;
virtual HRESULT __stdcall Execute (/*[in]*/ int value) = 0;
};