En C++, est-il possible qu'une DLL accède à certains symboles de l'application qui l'a chargée? J'ai une application qui charge les plug-ins (dll), et ces plug-ins doivent accéder à certaines API de l'application.une DLL doit accéder aux symboles de son application
Est-il possible d'y parvenir sans créer une nouvelle DLL qui partage cette API?
Une structure de pointeurs de fonction convient-elle dans cette situation? Exemple: une fonction bool Log (char *) définie dans l'application hôte et un plug-in qui doit enregistrer certains événements.
+1, mais est-ce un bon choix pour construire une architecture de plugin au-dessus de C++? Le plugin doit être construit avec le même compilateur C++ (si ce n'est pas la version puis au moins le constructeur). –
Vous pouvez toujours extern "C" si vous êtes si incliné - ce qui bien sûr vous limite aux interfaces de fonction de style C, mais c'est le compromis. Je suggère COM, mais je ne peux pas le faire avec un visage impassible :) –