我有一个 tlb 文件,其中包含一些我需要使用的函数声明。
如果我使用
#import "type_library.tlb"
我可以从我的代码中正确引用该函数:
tlb_namespace::required_function();
但是当我编译项目时,链接器说 tlb_namespace::required_function 是一个未解析的外部符号。
我怎样才能成功地建立这样的项目?
编辑:
我在 Dummy VBA 访问项目中使用了相同的类型库。我已经添加了对类型库的引用,并且我注意到类型库中包含的一些函数被正确调用。但其中一些不是。VBA 说它无法在相关的 dll 中找到它们的入口点。
这可以解释构建 c++ 应用程序时未解析的外部符号吗?
我还注意到失败的函数在 tlb 中声明如下:
UPPER_function_name
但在dll中声明如下:
Upper_function_name
这可能是问题吗?
直接修改二进制tlb文件或dll是否可以解决这种错误?