Bonjour,
Je suis actuellement sur un projet qui utilise le protocole COM.
Je voudrai savoir si c'est possible de creer et enregister un objet COM dans un programme .exe et non dans une librairie .dll.
Merci de votre aide.
Florent.
Bonjour,
Je suis actuellement sur un projet qui utilise le protocole COM.
Je voudrai savoir si c'est possible de creer et enregister un objet COM dans un programme .exe et non dans une librairie .dll.
Merci de votre aide.
Florent.
Oui, c'est comme ça que marchent les composants COM de type "local server" au lieu de "in-process server".
Une fois lancé, soit le programme crée (et enregistre) un objet unique, soit il enregistre une ClassFactory pour l'objet.
Pour certains composants, il existe même un programme déjà fourni par Windows, appelé le "DLL surrogate", qui charge un composant in-process et l'expose comme un local server.
Merci de ta réponse
Aurais tu s'il te plait des exemples de code ?
J'ai un peu de mal à en trouver (probleme avec COM dans Google qui n'est pas si facile de trouver)...
Un des exemples de Raymond Chen fait un serveur COM local interactif supportant l'interface IDropTarget (qui a l'avantage d'être connue de Windows, et donc n'a pas de problèmes de marshaling). Ce n'est pas forcément un très bon exemple, mais c'est celui que j'ai sous la main.
Ce chapitre de livre et les suivants sont probablement utiles, aussi.
Merci de ton aide.
Je vais voir tout cela.
Partager