Exposition de composants .NET à COM
L’écriture d’un type .NET et l’utilisation de ce type à partir de code non managé sont deux activités distinctes pour les développeurs. Cette section contient plusieurs conseils pour l’écriture de code managé interagissant avec des clients COM :
Qualification des types .NET pour l’interopérabilité.
Tous les types, méthodes, propriétés, champs et événements managés que vous voulez exposer à COM doivent être publics. Les types doivent avoir un constructeur public sans paramètre, qui est le seul constructeur pouvant être appelé dans COM.
Application d’attributs d’interopérabilité.
Les attributs personnalisés dans du code managé peuvent améliorer l’interopérabilité d’un composant.
Empaquetage d’un assembly pour COM.
Les développeurs COM peuvent vous demander de résumer les étapes impliquées dans le référencement et le déploiement de vos assemblys.
De plus, cette section identifie les tâches relatives à la consommation d’un type managé à partir d’un client COM.
Pour consommer un type managé à partir de COM
Inscription d’assemblys auprès de COM.
Les types d’un assembly (et des bibliothèques de types) doivent être inscrits au moment du design. Si un programme d’installation n’inscrit pas l’assembly, indiquez aux développeurs COM qu’ils doivent utiliser Regasm.exe.
Référencer des types .NET à partir de COM
Les développeurs COM peuvent référencer des types dans un assembly en utilisant les mêmes outils et techniques que ceux qu’ils utilisent aujourd’hui.
-
Les développeurs COM peuvent appeler des méthodes sur l’objet .NET de la même façon qu’ils appellent des méthodes sur un type non managé. Par exemple, l’API CoCreateInstance de COM active des objets .NET.
Déploiement d’une application pour accéder à COM.
Un assembly avec nom fort peut être installé dans le Global Assembly Cache et nécessite une signature de son éditeur. Les assemblys qui n’ont pas de nom fort doivent être installés dans le répertoire de l’application du client.