loadTypeLib 函数 (oleauto.h)
加载并注册类型库。
语法
HRESULT LoadTypeLib(
LPCOLESTR szFile,
ITypeLib **pptlib
);
参数
szFile
方法应尝试从中加载类型库的文件的名称。
pptlib
加载的类型库。
返回值
此函数可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
一个或多个参数无效。 |
|
内存不足,无法完成操作。 |
|
函数无法写入文件。 |
|
无法打开类型库。 |
|
函数无法从文件中读取。 |
|
类型库的格式较旧。 |
|
在 OLE 支持的 DLL 中找不到 LCID。 |
|
无法加载类型库或 DLL。 |
注解
函数 LoadTypeLib 加载通常使用 MkTypLib) 创建的类型库 (存储在指定文件中。 如果 szFile 仅指定文件名而不指定任何路径, 则 LoadTypeLib 将搜索该文件并按如下所示继续操作:
- 如果文件是由 Typelib.dll 实现的独立类型库,则直接加载该库。
-
如果文件是 DLL 或可执行文件,则加载该文件。 默认情况下,类型库是从 类型 ITypeLib 的第一个资源中提取的。 若要加载不同类型的库资源,请将整数索引追加到 szFile。 例如:
ITypeLib *ptlib; LoadTypeLib("C:\\MONTANA\\EXE\\MFA.EXE\\3", &ptlib)
此语句从 文件 Mfa.exe 文件加载类型库资源 3。
- 如果文件不是上述名称,则将文件名解析为名字对象 (表示基于文件的链接源) 的对象,然后绑定到名字对象。 此方法允许对外部类型库(包括内存中类型库)使用 LoadTypeLib 。 外部类型库不能驻留在 DLL 或可执行文件中。 有关名字对象的详细信息,请参阅 COM 程序员参考。
为了向后兼容,如果未在 szFile 参数中指定路径,LoadTypeLib 将注册类型库。 如果指定了类型库的路径,LoadTypeLib 将不会注册类型库。 建议使用 RegisterTypeLib 注册类型库。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | oleauto.h |
Library | OleAut32.lib |
DLL | OleAut32.dll |