Partager via


LoadTypeLibWithResolver, fonction

Charge une bibliothèque de types et utilise l’interface ITypeLibResolver fournie pour résoudre les bibliothèques de types référencées en interne.

Syntaxe

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

Paramètres

szFile
[in] Chemin d’accès au fichier de la bibliothèque de types.

regkind
[in] Indicateur d’énumération REGKIND qui contrôle la façon dont la bibliothèque de types est inscrite. Les valeurs possibles sont les suivantes :

  • REGKIND_DEFAULT : utilisez le comportement d’inscription par défaut.

  • REGKIND_REGISTER : inscrivez cette bibliothèque de types.

  • REGKIND_NONE : n’inscrivez pas cette bibliothèque de types.

pTlbResolver
[in] Pointeur vers l’implémentation de l’interface ITypeLibResolver.

pptlib
[out] Référence à la bibliothèque de types en cours de chargement.

Valeur de retour

Une des valeurs HRESULT répertoriées dans le tableau suivant.

Valeur retournée Signification
S_OK Réussite.
E_OUTOFMEMORY Mémoire insuffisante.
E_POINTER Un ou plusieurs des pointeurs ne sont pas valides.
E_INVALIDARG Un ou plusieurs arguments ne sont pas valides.
TYPE_E_IOERROR La fonction n’a pas pu écrire dans le fichier.
TYPE_E_REGISTRYACCESS Impossible d’ouvrir la base de données d’inscription du système.
TYPE_E_INVALIDSTATE Impossible d’ouvrir la bibliothèque de types.
TYPE_E_CANTLOADLIBRARY Impossible de charger la bibliothèque de types ou la DLL.

Notes

Tlbexp.exe (Exportateur de bibliothèque de types) appelle la fonction LoadTypeLibWithResolver pendant le processus de conversion d’assembly en bibliothèque de types.

Cette fonction charge la bibliothèque de types spécifiée avec un accès minimal au Registre. La fonction examine ensuite la bibliothèque de types pour les bibliothèques de types référencées en interne, chacune devant être chargée et ajoutée à la bibliothèque de types parente.

Avant qu’une bibliothèque de types référencée puisse être chargée, son chemin d’accès au fichier de référence doit être résolu en chemin d’accès complet du fichier. Pour ce faire, utilisez la méthode ResolveTypeLib fournie par l’interface ITypeLibResolver, qui est passée dans le paramètre pTlbResolver.

Lorsque le chemin d’accès complet de la bibliothèque de types référencé est connu, la fonction LoadTypeLibWithResolver charge et ajoute la bibliothèque de types référencée à la bibliothèque de types parent, créant ainsi une bibliothèque de types primaire combinée.

Une fois la fonction résolue et chargée toutes les bibliothèques de types référencées en interne, elle retourne une référence à la bibliothèque de types résolue principale dans le paramètre pptlib.

La fonction LoadTypeLibWithResolver est généralement appelée par Tlbexp.exe (exportateur de bibliothèque de types) qui fournit son propre implémentation d’interface ITypeLibResolver interne dans le paramètre pTlbResolver.

Si vous appelez LoadTypeLibWithResolver directement, vous devez fournir votre propre implémentation d’interface ITypeLibResolver.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : TlbRef.h

Bibliothèque : TlbRef.lib

.NET Framework version : 3.5, 3.0, 2.0

Voir aussi