J'ai un composant COM in-proc ATL C++. Ce composant n'est pas destiné à un usage externe - j'en ai seulement besoin pour une utilisation dans notre application.Est-il possible d'interdire de mettre mon composant in-proc dans COM +?
De temps en temps, les utilisateurs le placent dans COM +, ce qui conduit à toutes sortes d'erreurs bizarres - "Accès refusé", etc. dont je ne veux jamais entendre parler. Le meilleur moyen serait de faire quelque chose qui interdirait de placer le composant dans COM + afin qu'il ne puisse être utilisé que comme serveur in-proc. Y a-t-il un moyen de faire cela?
J'ai vérifié toutes les choses que vous suggérez mais COM + est heureux d'ajouter le composant. Je suppose que ce sera inutilisable - CoCreateInstance() échouera avec différentes plaintes comme "interface non supporté" - mais c'est en fait le même problème que j'ai commencé avec. Donc, au lieu de régler le problème, j'ai rétréci la surface d'où il pourrait provenir. Généralement, les utilisateurs ajoutent notre composant car son ProgID figure dans la liste des composants enregistrés et est similaire aux ProgID de nos autres composants. Donc, ils "ajoutent tout". J'ai changé le code d'exposition de registre de sorte qu'il expose seulement le ClassId ... – sharptooth
... et espère que le problème ne nous dérangera jamais encore. Merci beaucoup pour les suggestions de toute façon - maintenant nous savons que ces étapes ne résolvent pas vraiment le problème. – sharptooth
Merci pour les informations de suivi! –