Se connecter / S'enregistrer
Votre question

[.NET/Managed C++/DCOM/Visual studio] Question pour experts

Tags :
  • Visual studio
  • Programmation
Dernière réponse : dans Programmation
a b L Programmation
9 Mars 2007 21:00:44

Bonjour,

J'ai réalisé un petit composant DCOM (service exe) en Managed C++, je n'ai pas eu de problème, car j'ai utilisé le wizard ATL, sachant que ce n'est pas un composant graphique, ni composant Web.
Ensuite, j'ai voulu faire le client en .Net et Managed C++. Sous visual studio 2003, je n'ai pas trouvé comment faire ça simplement comme on le faisait avant en MFC avec les macros AFX.
Est-ce qu'il existe un manière simple d'ajouter les liaisons avec l'interface du composant ? ou faut-il taper du code à la main ?
Si vous avez la réponse avec un client C# plutôt que le Managed C++, je suis aussi preneur ;) 

J'ai remarqué que Microsoft a mis en place un nouveau type de composant distribué qui, apparemment, devrait remplacer le DCOM, c'est le .NET Remoting. Si quelqu'un a déjà utilisé ce dernier, l'as-t-il trouvé convaincant ?
En fait en C#, je comprend qu'on utilise le .NET Remoting, mais en Managed .NET, n'est-il pas préférable de rester dans le DCOM (vis-à-vis des performances) ?

CORBA/DCOM/.NET Remoting, c'est bien joli l'interopérabilité, mais est-ce qu'on n'est pas en train de la perdre là ? déjà qu'avec DCOM et CORBA ça en fait beaucoup :D 

Merci :) 

Autres pages sur : net managed dcom visual studio question experts

a b L Programmation
13 Mars 2007 19:35:13

En fait pour ajouter une liaison, il suffit de l'importer comme un composant .NET (dans "Ajouter une référence").
Le système ajoute un wrapper RCW pour permettre la liaison client .NET serveur COM et inversement avec le wrapper CCW.
Donc, microsoft a prévu l'intéropérabilité entre COM/DCOM et .NET.
[ironique]Etonnamment, ils n'ont pas prévu la liaison vace les composants CORBA[/ironique]

En C#, pour intégrer un DCOM avec évènement de callback (le serveur envoit un évènement au client), c'est simple, l'ajout de la référence a créé une de délégation, il suffit de l'utiliser pour affecter la méthode à l'évènement.
En Managed C++, je suis encore en train de regarder car la classe de délégation.

Pour le .NET remoting, ça revient à faire un DCOM, et il suffit de faire hériter le composant de MarshalByRefObject pour le rendre distribué.
14 Mars 2007 12:26:38

Oula ! J'avais déjà peur en voyant que c'était toi qui posait une question , mais alors la en .net => buiten voor mij !

Citation :

CORBA/DCOM/.NET Remoting, c'est bien joli l'interopérabilité, mais est-ce qu'on n'est pas en train de la perdre là ? déjà qu'avec DCOM et CORBA ça en fait beaucoup :D 


Ne t'inquiète pas ! En java c'est tout aussi bordélique ^^
Contenus similaires
a b L Programmation
14 Mars 2007 19:20:43

Les composants sont censés indépendants des langages.
Mais bon, en pratique, en Java c'est généralement du CORBA alors qu'en C++ c'est CORBA ou DCOM (si sous windows), et en C# c'est .NET Remoting, même si on peut inverser.
15 Mars 2007 08:16:59

La mode actuelle en Java c'est le Wsdl , en théorie c'est utilisable par n'importe qu'elle autre langage.
a b L Programmation
15 Mars 2007 19:44:10

Oui, c'est la couche basse des web services (que le .NET remoting peut aussi utiliser), mais bon, ça c'est normé, et tout le monde va pour l'utiliser (puisque même .NET remoting a l'air de l'implémenter).
Le problème est le même, parce que si quelqu'un sort son format, ce sera aussi indépendant du langage, mais incompatible avec le wsdl. du coup, il faudrait (comme pour les composants) faire des wrapper et alourdir tout ça. :D 
15 Mars 2007 21:26:10

Bah ... on peut se consoler en se disant qu'i y aura toujours quelque chose de nouveau pour nous faire passer le temps à chercher comment le faire fonctionner xD
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS