La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 295 De DCOM à.Net.

Présentations similaires


Présentation au sujet: "Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 295 De DCOM à.Net."— Transcription de la présentation:

1 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 295 De DCOM à.Net

2 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 296 DCOM : Solution microsoft Propriétaire –Intégrée avec d'autres produits Microsoft (architecture DNA : Distributed Network Architecture) COM ActiveX MTS MQS –Fonctionne sur plusieurs plates-formes NT/95 Unix

3 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 297 Le document DDE : Dynamic Data Exchange –Service de transmission de messages pour faire communiquer deux applications (1992) –Complexe uniquement implanté sur Excel OLE1 : Object Linking & Embedding –Repose sur DDE –Copier/coller OLE2 (1993) –Activation In-Situ

4 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 298 DCOM : Motivations Développement et évolution d'applications réparties sur des machines hétérogènes –Mécanismes "transparents" d'appel à distance Réutilisation de code –Réutilisation de composants binaires exécutables Pas d'accès au code source Association d'interfaces multiple à un composant binaire –Mécanisme de composition Construction de composants à partir de composants existants Evolution dynamique –Remplacement de composants (sans recompilation ou édition de liens) –Association de nouvelles interfaces –Capacité d'auto-description

5 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 299 DCOM: Distributed Component Object Model DCE : Architecture distribuée COM (Component Object Model) le modèle d'objet composant (1996) Active-X: élément graphique actif que l'on peut assembler ou inclure dans des documents DCOM: utilisation dun modèle RPC de DCE pour les communications entre objets (1997) (Ms)IDL: langage de définition d'interfaces.net / DNA / Hailstorm

6 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 300 COM Approche binaire des objets Un objet COM : –publie une et une série d'interfaces –possède au moins une interface IUnknown qui possède une méthode QueryInterface qui possède des méthode de gestion du cycle de vie (Addref(), Release()) –chaque interface présente un GUID 3 familles de composants –in-process, local, distant

7 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 301 COM est une fondation simple Instanciation / Publication Appels RPC Contrôle de fonctionnement mémoire + Nommage (moniker) Stockage persistant Transfert uniforme de données (flux) Automation

8 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 302 La bibliothèque COM Elle fournit une API pour la gestion des composants –Initialisation et terminaison –Allocation et libération de la mémoire –Génération des GUID (identificateurs uniques) –Accès à la base de registres (GUID Noms) –Création des composants –Enregistrement des fabriques de classes –Bibliothèque pour emballage et déballage des paramètres

9 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 303 La base de registre Base de donées permettant d'associer noms et GUID –CLSID -> Nom de fichier contenant le code d'implantation {0003DF…098} --> C:\ProgramFiles\Internet\iexplore.exe –Nom familier(Progid)-->CLSID Explorer.Appli_2-->{0003DF…098} Autres fonctions de désignation et recherche –Informations sur configuration, usagers, etc… –Informations utiles pour la répartition (cf. DCOM)

10 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 304 COM, ActiveX et OLE Documents Contrôles Mise en script Activation in situ Liaison Incorporation Glisser relâcher Transfert uniforme de données Stockage persistant Monikers Automation Modèle d'objet composant COM ActiveX OLE Documents composites

11 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 305 DCOM Application Cliente Proxy objet COM distant Proxy objet COM local Souche COM Composant COM Souche COM Composant COM Exécutable COM Composant Sécurité DCE RPC Protocole de comm CLIENT SERVEUR Processus Client Processus serveur

12 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 306 CInsideDCOM AddRef Release QueryInterface Sum Cfactory ISum IClassFactory IUnknown Sum CreateInstance LockServer AddRef Release QueryInterface

13 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 307 Exemple de code import "unknwn.idl"; [object, uuid( ] interface Isum:Iunknown{ HRESULT Sum([in] int x, [in] int y, [out, retval]int * retval); };

14 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 308 Les étapes d'appel d'un service 1) Créer un composant (CLSID) 2) Obtenir un pointeur d'interface (IID) 3) Appel d'une méthode –fonction de l'interface 4) Terminer –Gestion de la mémoire

15 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 309 Exemple de code client void main(){ Iunknown * pUnknown; Isum * pISum; HRESULT hr=CoInitialize(NULL); if(FAILED(hr)) cout << "CoInitialize failed."<QueryInterface(IID_Isum, (void**)&pSum); if (FAILED(hr)) cout << "IID_Isum not supported."<Released(); int sum; /*3*/ hr=pSum->Sum(2,3,&sum); if(SUCCEED(hr)) cout << "Client: Calling Sum(2,3)= » << sum << endl; /*4*/ pSum->Released(); CoUninitialize(); }

16 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 310 Conclusion sur DCOM Produit "propriétaire" –Lié à l'environnent Microsoft Environnement de développement spécifique (Visual…) Intégration aux autres outils –Office, Serveur Web IIS, IE, etc… Interconnexion possible sur CORBA –Outil puissant, mais concepts difficiles à appréhender Spécifications opaques Héritage d'OLE –Nombreux composants diffusés Windows / VB...

17 Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 311 Références G. Eddon, H. Eddon, Au cœur de Distributed COM, Microsoft Press France, 1998 R. Grimes, Professional DCOM Programming, Wrox Press, Canada, 1997 Pointeurs –Microsoft –http://www.sente.ch/cetus/OO_ole.html –http://research.microsoft.com/~ymwang/papers/HTML/DCOMnCORBA/S.ht ml –http://www.execpc.com/~gopalan/misc/compare.html


Télécharger ppt "Stéphane Frenot - Département Télécommunication - SID - lyon.fr II - Dcom 295 De DCOM à.Net."

Présentations similaires


Annonces Google