Partager via


Inconvénients

Les serveurs in-process offrent l’avantage de vitesse et de taille d’un gestionnaire d’objets avec la fonctionnalité d’édition d’un serveur local. Pourquoi choisiriez-vous d’implémenter votre application OLE en tant que serveur local plutôt qu’un serveur in-process ? Il existe plusieurs raisons :

  • Sécurité. Seul un serveur local a son espace d’adressage isolé de celui du client. Un serveur in-process partage l’espace d’adressage et le contexte de processus du client et peut donc être moins robuste face aux erreurs ou à la programmation malveillante.
  • Granularité. Un serveur local peut héberger plusieurs instances de son objet sur de nombreux clients différents, partageant l’état du serveur entre les objets de plusieurs clients de manière difficile ou impossible s’il est implémenté en tant que serveur in-process, qui est simplement une DLL chargée dans chaque client.
  • Compatibilité. Si vous choisissez d’implémenter un serveur in-process, vous abandonnez la compatibilité avec OLE 1, qui ne prend pas en charge ces serveurs. Cela ne sera pas une considération pour de nombreux développeurs, mais si c’est le cas, il s’agit d’une préoccupation critique.
  • Incapacité à prendre en charge les liens. Un serveur in-process ne peut pas servir de source de lien. Étant donné qu’une DLL ne peut pas s’exécuter par elle-même, elle ne peut pas créer un objet de fichier à lier.

Malgré ces inconvénients, un serveur in-process peut être un excellent choix pour sa vitesse et sa taille , s’il répond à toutes vos autres exigences.

avantages

serveurs In-Process