2

通常我们在程序开始时导入一个 tlb 文件,例如

#include < stdio.h >
#import " sql.tlb "

但是当程序中间满足某些条件时,我需要导入一个 tlb 文件

我怎样才能做到这一点。加载 dll 有LoadLibrary()但加载 tlb 我可以使用LoadLibrary()

由于 tlb 是使用 .dll 生成的?

4

1 回答 1

8

您可以使用LoadTypeLib在运行时加载类型库。

ITypeLib *ptlib;
LoadTypeLib("sql.tlb", &ptlib);

你所做的事情ptlib有点悬而未决,因为你并没有真正说出你想用它做什么。

ptlib是一个支持ITypeLib接口的对象。它具有您可以调用的方法来枚举和迭代类型库中的类型。通常您将它与ITypeInfo等其他接口结合使用。

我在这里找到了更完整的教程样式文档。另外,这里的这个链接有更多的细节,它还显示了你需要使用的头文件和链接库。

头文件 oaidl.h、oaidl.idl
库 oleaut32.lib、uuid.lib
Windows Embedded CE Windows CE 2.0 及更高版本
Windows Mobile Windows Mobile 5.0 及更高版本
于 2009-07-10T09:12:05.677 回答