Comment : référencer les objets COM à partir de Visual Basic
En Visual Basic, l’ajout de références à des objets COM qui ont des bibliothèques de types nécessite la création d’un assembly d’interopérabilité pour la bibliothèque COM. Les références aux membres de l’objet COM sont dirigées vers l’assembly d’interopérabilité, puis transmises à l’objet COM réel. Les réponses de l’objet COM sont dirigées vers l’assembly d’interopérabilité et transmises à votre application .NET Framework.
Vous pouvez référencer un objet COM sans utiliser d’assembly d’interopérabilité en incorporant les informations de type de l’objet COM dans un assembly .NET. Pour incorporer des informations de type, définissez la propriété Embed Interop Types
sur True
pour la référence à l’objet COM. Si vous utilisez le compilateur de ligne de commande, utilisez l’option /link
pour référencer la bibliothèque COM. Pour plus d’informations, consultez -link (Visual Basic).
Visual Basic crée automatiquement des assemblys d’interopérabilité lorsque vous ajoutez une référence à une bibliothèque de types à partir de l’environnement de développement intégré (IDE). Lorsque vous travaillez à partir de la ligne de commande, vous pouvez utiliser l’utilitaire Tlbimp pour créer manuellement des assemblys d’interopérabilité.
Ajouter des références à des objets COM
Dans le menu Projet, choisissez Ajouter une référence, puis cliquez sur l’onglet COM dans la boîte de dialogue.
Sélectionnez le composant que vous souhaitez utiliser dans la liste des objets COM.
Pour simplifier l’accès à l’assembly d’interopérabilité, ajoutez une instruction
Imports
en haut de la classe ou du module dans laquelle vous allez utiliser l’objet COM. Par exemple, l’exemple de code suivant importe l’espace de nomsINKEDLib
pour les objets référencés dans la bibliothèqueMicrosoft InkEdit Control 1.0
.Class Sample 'Private s As IInkCursor End Class
Créer un assembly d’interopérabilité à l’aide de Tlbimp
Ajoutez l’emplacement de Tlbimp au chemin de recherche, s’il ne fait pas déjà partie du chemin de recherche et que vous n’êtes pas actuellement dans le répertoire où il se trouve.
Appelez Tlbimp à partir d’une invite de commandes, en fournissant les informations suivantes :
Nom et emplacement de la DLL qui contient la bibliothèque de types
Nom et emplacement de l’espace de noms où les informations doivent être placées
Nom et emplacement de l’assembly d’interopérabilité cible
Le code suivant est fourni à titre d'exemple :
Tlbimp test3.dll /out:NameSpace1 /out:Interop1.dll
Vous pouvez utiliser Tlbimp pour créer des assemblys d’interopérabilité pour les bibliothèques de types, même pour les objets COM non enregistrés. Toutefois, les objets COM auxquels font référence les assemblys d’interopérabilité doivent être correctement inscrits sur l’ordinateur où ils doivent être utilisés. Vous pouvez inscrire un objet COM à l’aide de l’utilitaire Regsvr32 inclus avec le système d’exploitation Windows.