Compartir a través de


LoadTypeLibWithResolver (Función)

Esta función puede usarse para cargar una biblioteca de tipos y resolver cualquier biblioteca de tipos a la que se haga referencia de manera interna mediante la interfaz ITypeLibResolver.

Sintaxis

HRESULT LoadTypeLibWithResolver(  
    [in]  LPCOLESTR           szFile,  
    [in]  REGKIND             regkind,  
    [in]  ITypeLibResolver   *pTlbResolver,  
    [out] ITypeLib          **pptlib);  

Parámetros

szFile
[in] El valor de este parámetro se corresponde con la ruta de acceso del archivo de la biblioteca de tipos.

regkind
[in] El valor de este parámetro se corresponde con una marca de enumeración REGKIND que controla cómo se registra la biblioteca de tipos. Los valores posibles son los siguientes:

  • REGKIND_DEFAULT: el uso de este valor establecerá el uso del comportamiento de registro predeterminado.

  • REGKIND_REGISTER: el uso de este valor causará que la biblioteca de tipos se registre.

  • REGKIND_NONE: el uso de este valor causará que la biblioteca de tipos no se registre.

pTlbResolver
[in] El valor de este parámetro se corresponde con un puntero que apunta a la implementación de la interfaz ITypeLibResolver.

pptlib
[out] El valor de este parámetro se corresponde con una referencia a la biblioteca de tipos que se va a cargar.

Valor devuelto

Al usar esta función, se obtendrá uno de los valores HRESULT que aparecen en la siguiente tabla.

Valor devuelto Significado
S_OK Correcto.
E_OUTOFMEMORY Memoria insuficiente
E_POINTER Uno o varios de los punteros no son válidos.
E_INVALIDARG Uno o varios argumentos no son válidos.
TYPE_E_IOERROR La función no pudo realizar el proceso de escritura en el archivo.
TYPE_E_REGISTRYACCESS No se pudo abrir la base de datos de registro de sistemas.
TYPE_E_INVALIDSTATE No se pudo abrir la biblioteca de tipos.
TYPE_E_CANTLOADLIBRARY No se pudo cargar la biblioteca de tipos o el archivo DLL en cuestión.

Comentarios

Al usar el ejecutable Tlbexp.exe (exportador de biblioteca de tipos), se llama a la función LoadTypeLibWithResolver durante el proceso de conversión de ensamblado a biblioteca de tipos.

Con esta función, se carga la biblioteca de tipos que se haya especificado con acceso mínimo al registro. Después, la función examina la biblioteca de tipos en busca de referencias internas a bibliotecas. Cada una de estas bibliotecas debe cargarse y agregarse a la biblioteca de tipos primaria.

Antes de que se pueda cargar una biblioteca de tipos a la que se hace referencia, la ruta de acceso de referencia del archivo debe resolverse para obtener la ruta de acceso completa del archivo. Para hacer esto, puede usarse el método ResolveTypeLib que se proporciona en la interfaz ITypeLibResolver. Esta debe pasarse en el parámetro pTlbResolver.

Una vez que se conozca la ruta de acceso completa del archivo de la biblioteca de tipos a la que se hace referencia, puede usarse la función LoadTypeLibWithResolver para cargar y agregar la biblioteca de tipos a la que se hace referencia a la biblioteca de tipos primaria. Este proceso concluirá con la creación de una biblioteca de tipos primaria combinada.

Cuando la función resuelva y cargue todas las bibliotecas de tipos a las que se hace referencia internamente, se devolverá una referencia a la biblioteca de tipos primaria que se resolvió, que se ubica en el parámetro pptlib.

La función LoadTypeLibWithResolver suele recibir llamadas del ejecutable Tlbexp.exe (exportador de biblioteca de tipos). Este exportador incluye una implementación interna de la interfaz ITypeLibResolver el parámetro pTlbResolver.

Si va a llamar a la función LoadTypeLibWithResolver directamente, deberá proporcionar su propia implementación de la interfaz ITypeLibResolver.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: TlbRef.h

Biblioteca: TlbRef.lib

Versión de .NET Framework: 3.5, 3.0 o 2.0

Consulte también