Responsabilités du serveur COM
L’un des moyens les plus importants pour un client d’obtenir un pointeur vers un objet consiste pour le client à demander qu’un serveur soit lancé et qu’un instance de l’objet fourni par le serveur soit créé et activé. Il incombe au serveur de s’assurer que cela se produit correctement. Il y a plusieurs parties importantes à cela.
Le serveur doit implémenter le code d’un objet de classe via une implémentation de l’interface IClassFactory ou IClassFactory2 .
Le serveur doit inscrire son CLSID dans le registre système sur l’ordinateur sur lequel il réside et, au-delà, a la possibilité de publier son emplacement de machine sur d’autres systèmes sur un réseau pour permettre aux clients de l’appeler sans que le client connaisse l’emplacement du serveur.
Le serveur est principalement responsable de la sécurité ; c’est-à-dire que, dans la plupart des cas, le serveur détermine s’il fournira un pointeur vers l’un de ses objets vers un client.
Les serveurs in-process doivent implémenter et exporter certaines fonctions qui permettent au processus client de les instancier.
Les rubriques suivantes détaillent les responsabilités du serveur COM :
- Implémentation d’IClassFactory
- Licences et IClassFactory2
- Inscription de serveurs COM
- Helpers d’implémentation de serveur hors processus
- Création et optimisations de GUID
Rubriques connexes