Funzione LoadTypeLibWithResolver

Carica una libreria di tipi e usa l'interfaccia ITypeLibResolver fornita per risolvere eventuali librerie di tipi a cui si fa riferimento internamente.

Sintassi

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

Parametri

szFile
[in] Percorso del file della libreria dei tipi.

regkind
[in] Flag di enumerazione REGKIND che controlla la modalità di registrazione della libreria dei tipi. I relativi valori possibili sono:

  • REGKIND_DEFAULT: usare il comportamento di registrazione predefinito.

  • REGKIND_REGISTER: registrare questa libreria di tipi.

  • REGKIND_NONE: non registrare questa libreria di tipi.

pTlbResolver
[in] Puntatore all'implementazione dell'interfaccia ITypeLibResolver.

pptlib
[out] Riferimento alla libreria dei tipi caricata.

Valore restituito

Uno dei valori HRESULT elencati nella tabella seguente.

Valore restituito Significato
S_OK Operazione completata.
E_OUTOFMEMORY Memoria insufficiente.
E_POINTER Uno o più puntatori non sono validi.
E_INVALIDARG Uno o più argomenti non sono validi.
TYPE_E_IOERROR La funzione non è riuscita a scrivere nel file.
TYPE_E_REGISTRYACCESS Impossibile aprire il database di registrazione del sistema.
TYPE_E_INVALIDSTATE Impossibile aprire la libreria dei tipi.
TYPE_E_CANTLOADLIBRARY Impossibile caricare la libreria di tipi o la DLL.

Commenti

Il Tlbexp.exe (Type Library Exporter) chiama la funzione durante il LoadTypeLibWithResolver processo di conversione da assembly a tipo libreria.

Questa funzione carica la libreria dei tipi specificata con accesso minimo al Registro di sistema. La funzione esamina quindi la libreria dei tipi per le librerie di tipi a cui si fa riferimento internamente, ognuna delle quali deve essere caricata e aggiunta alla libreria dei tipi padre.

Prima che sia possibile caricare una libreria di tipi a cui si fa riferimento, il percorso del file di riferimento deve essere risolto in un percorso di file completo. Questa operazione viene eseguita tramite il metodo ResolveTypeLib fornito dall'interfaccia ITypeLibResolver, che viene passata nel pTlbResolver parametro.

Quando il percorso completo del file della libreria dei tipi a cui si fa riferimento è noto, la LoadTypeLibWithResolver funzione carica e aggiunge la libreria dei tipi a cui si fa riferimento alla libreria dei tipi padre, creando una libreria di tipi primaria combinata.

Dopo che la funzione risolve e carica tutte le librerie di tipi a cui si fa riferimento internamente, restituisce un riferimento alla libreria dei tipi risolti primaria nel pptlib parametro.

La LoadTypeLibWithResolver funzione viene in genere chiamata dalla Tlbexp.exe (Type Library Exporter) che fornisce la propria implementazione interna dell'interfaccia ITypeLibResolver nel pTlbResolver parametro.

Se si chiama LoadTypeLibWithResolver direttamente, è necessario specificare l'implementazione dell'interfaccia ITypeLibResolver .

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: TlbRef.h

Libreria: TlbRef.lib

Versione di .NET Framework: 3.5, 3.0, 2.0

Vedi anche