Ok, pas de panic, @SheepSheep, tu me semble un peu perdu.
Je pense que tu cherches un peu trop "générique", il faut focaliser tes recherches sur tes besoins précis.
MFC est un Framework graphique d'assez bas niveau ( en terme d’abstraction ). Il ne propose pas pléthore de solutions intégrées pour faire des choses un peu "chiadé".
On se retrouve souvent à faire tout le sale boulot nous même, à la main.
Il y a donc plein de petit "hacks" que les personnes partagent, mais il faut avoir une certaine habitude pour connaitre l'intérêt et les limitations qu'ils ont.
Le lien que tu as posté (https://www.codeproject.com/Articles...-Extension-DLL) ne fait que ce qui est clairement indiqué, simplifier l'utilisation de classes "packagées" dans une Dll (le fait que cela soit une Dll d'extention MFC permet d'utiliser les classes MFC dans les classes de bases et les paramètres des méthodes des classes exportées).
Le fait que l'exécutable soit statiquement lié à la dll les contenant est un effet voulu. Ici, on n'est pas dans un "hack" pour faire des plugins, mais pour simplifier la réutilisation de classe dans différents projets.
Attention aussi que la méthode montrée date un peu et qu'elle devrait être adaptée aux fonctionnalités maintenant offertes par les "nouvelles" version de Visual Studio.
En n'utilisant pas un framework MFC pour plugins, vous n'imposez pas son utilisation, donc sa maitrise, aux concepteurs de PlugIns (bien qu'il est peut-être possible d'avoir des frameworks très bien conçus, qui soient transparents pour les concepteurs de PlugIns, mais vu le nombre restreint de framework MFC pour plugins, c'est pas sûr que ça existe).
Mais vous vous retrouvez à vous même concevoir comment architecturer votre application pour l'utilisation de PlugIns.
L'architecture des MFC est tel qu'il vaut mieux concevoir comment l'utilisateur se verra offrir ces extensions dans l'IHM et ainsi réduire les recherches sur la manière de faire :
Simple intégration de menu :
-> https://www.codeproject.com/Articles...enu-Interfaces
Intégration dans le choix des types de document :
-> https://www.codeproject.com/Articles...amically-loade
Intégration plus poussée :
-> https://www.codeproject.com/Articles...LL-plug-in-tec
Plus vous intégrez le plugIns dans votre application, plus il y a de "contraintes" pour les concepteurs de PlugIns.
Attention aussi que ces codes et ceux que vous trouverez souvent sur le Web sont généralement vieux et qu'il faut les adapter aux règles de codages et aux MFC/ATL actuelles.
Commencez par voir comment intégrer des PlugIns dans l'IHM de votre application.Je n'arrive pas à trouver d'exemple pour ce cas, et j'ai du mal à partir de rien je vous avoue..
Partager