Ok, dann müssen wir das mal etwas anders aufdröseln
Es gibt ein Hauptprogramm, dass die Plugins lädt und jedem Plugin einen Tab (mit einem Container) zur Verfügung stellt.
In diesem Container kann das Plugin dann je nach Gusto einen Einstellungsseite zur Verfügung stellen.
Die zu verarbeitenden Daten (also das Problem für sich) sind allerdings für alle Plugins gleich. Somit ergeben sich 3 Funktionalitäten die die Plugin-Dlls anbieten müssen:
- GetPluginName
- YourParentHandle( aHandle )
- SolveProblem( ProblemDefinition )
Das Hauptprogramm fragt die
DLL nach dem Plugin-Namen und erstellt ein Tab mit dem entsprechenden Container.
Der
Handle dieses Containers wird an das Plugin zurückgegeben. Mit diesem
Handle kann das Plugin nun die eigene Einstellungsseite oder was auch immer anzuzeigen.
Um das Problem zu lösen ruft das Hauptprogramm nun einfach SolveProblem des Plugins auf.
Damit sollte die Frage eigentlich beantwortet sein ...