Ajouter aux favoris  Imprimer  www.labo-dotnet.com
 
 

Interopérabilité COM / .Net

Par  Simon FERQUEL
Publié le 14/12/2004

Introduction


Le Framework .Net de Microsoft est sorti très récemment et se doit donc de s’intégrer à l’existant. Dans le contexte de sa sortie, la majorité des développeurs sous plate-forme Windows, construisaient des programmes basés sur des objets COM C++ et VB. Pour inciter les développeur à migrer vers les technologies .Net, les avantages offerts par la CLR et les nouveaux langages VB.NET et C# n’étaient pas suffisant : il fallait que les développeurs puissent réutiliser leurs créations antérieurs. Le but de se document est donc de présenter cette capacité d'intégration de .Net avec des objets COM éxistant.
Ce document ne se veut pas exhaustif, le sujet étant très vaste, et les connaissances demandées sur les technologies COM et .Net devenant de plus en plus complexes au fur et à mesure des approfondissements. Je n’ai pas inclus non plus d’éléments sur l’intégration de contrôles ActiveX dans .Net et inversement. Je signalerai juste que l’intégration d’ActiveX dans .Net est très simple (elle nécessite seulement l’ajout du contrôle ActiveX dans la ToolBar de VS.Net) et que la plupart des applications Microsoft sont livrées avec des contrôles ActiveX reprenant tout ou partie des fonctionnalités et de l’interface de ces dits logiciel. Il existe par exemple un ActiveX Windows Media Player, un autre pour créer des graphes Excel, un autre pour afficher une page Html… Le contraire est plus difficile, mais des pistes de réflexions sont présentes sur la MSDN afin de vous aider dans cette tâche.
Je n'ai pas non plus inclus dans cet article d'explication sur les techniques de liaison tardive en .Net. En effet, il existe une autre solution que celle décrite dans ce document pour exploiter des objets COM, qui se rapproche fortement de celle utilisée par VBScript. Cette solution étant plus coûteuse en performance et moins pratique (car ne permettant pas de bénificier de l'intellisense), je l'ai volontairement omise.

 

Commentaires
Par Pierre-Bruno Routens 'xarius' le 16/02/2006 17:08
Bonjour,

Je voudrai savoir comment faire pour retourner un objet au lieu d'un type

ex : HRESULT Sum([in] long val1, [in] long val2, [out,retval] long* retval);

à la place je voudrai

HRESULT Sum([in] long val1, [in] long val2, [out,retval] MonOBjet* retval);

Cordialement,

xarius


Par Pierre-Bruno Routens 'xarius' le 16/02/2006 17:38
Bonjour,

Je voudrai savoir comment faire pour retourner un objet au lieu d'un type

ex : HRESULT Sum([in] long val1, [in] long val2, [out,retval] long* retval);

à la place je voudrai

HRESULT Sum([in] long val1, [in] long val2, [out,retval] MonOBjet* retval);

Cordialement,

xarius


Ajouter un commentaire
Vous devez être authentifié pour poster un commentaire. Vous pouvez vous authentifier ici.

 

 

 
   
© Copyright SUPINFO - International University
Conditions dutilisation et Copyright - Respect de la vie prive
Labo Microsoft | Forum Microsoft | Forums .Net | Labo .Net | Blogs | FaqXP | Certifications
 
Créer un compte | Connexionvendredi 9 janvier 2009