Compartir a través de


Función LoadTypeLib (oleauto.h)

Carga y registra una biblioteca de tipos.

Sintaxis

HRESULT LoadTypeLib(
  LPCOLESTR szFile,
  ITypeLib  **pptlib
);

Parámetros

szFile

Nombre del archivo desde el que el método debe intentar cargar una biblioteca de tipos.

pptlib

Biblioteca de tipos cargada.

Valor devuelto

Esta función puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
Correcto.
E_INVALIDARG
Uno o varios de los argumentos no son válidos.
E_OUTOFMEMORY
Memoria insuficiente para completar la operación.
TYPE_E_IOERROR
La función no pudo realizar el proceso de escritura en el archivo.
TYPE_E_INVALIDSTATE
No se pudo abrir la biblioteca de tipos.
TYPE_E_INVDATAREAD
La función no pudo leer del archivo.
TYPE_E_UNSUPFORMAT
La biblioteca de tipos tiene un formato anterior.
TYPE_E_UNKNOWNLCID
No se encontró el LCID en los archivos DLL compatibles con OLE.
TYPE_E_CANTLOADLIBRARY
No se pudo cargar la biblioteca de tipos o el archivo DLL en cuestión.

Comentarios

La función LoadTypeLib carga una biblioteca de tipos (normalmente creada con MkTypLib) que se almacena en el archivo especificado. Si szFile especifica solo un nombre de archivo sin ninguna ruta de acceso, LoadTypeLib busca el archivo y continúa de la siguiente manera:

  • Si el archivo es una biblioteca de tipos independiente implementada por Typelib.dll, la biblioteca se carga directamente.
  • Si el archivo es un archivo DLL o un archivo ejecutable, se carga. De forma predeterminada, la biblioteca de tipos se extrae del primer recurso de tipo ITypeLib. Para cargar otro tipo de recurso de biblioteca, anexe un índice entero a szFile. Por ejemplo:
    ITypeLib *ptlib;
    LoadTypeLib("C:\\MONTANA\\EXE\\MFA.EXE\\3", &ptlib)
    

    Esta instrucción carga el recurso de biblioteca de tipos 3 desde el archivo Mfa.exe archivo.

  • Si el archivo no es ninguno de los anteriores, el nombre de archivo se analiza en un moniker (un objeto que representa un origen de vínculo basado en archivos) y, a continuación, se enlaza al moniker. Este enfoque permite usar LoadTypeLib en bibliotecas de tipos externos, incluidas las bibliotecas de tipos en memoria. Las bibliotecas de tipos externos no pueden residir en un archivo DLL ni en un archivo ejecutable. Para obtener más información sobre monikers, consulte la Referencia del programador com.
Si la biblioteca de tipos ya está cargada, LoadTypeLib incrementa el recuento de referencias de la biblioteca de tipos y devuelve un puntero a la biblioteca de tipos.

Por compatibilidad con versiones anteriores, LoadTypeLib registrará la biblioteca de tipos si la ruta de acceso no se especifica en el parámetro szFile . LoadTypeLib no registrará la biblioteca de tipos si se especifica la ruta de acceso de la biblioteca de tipos. Se recomienda usar RegisterTypeLib para registrar una biblioteca de tipos.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado oleauto.h
Library OleAut32.lib
Archivo DLL OleAut32.dll