Zitat:
a. in möglichst jeder sprache geschrieben werden können (pascal und c würden mir reichen)
DLL und alles über Interfaces (statt String verwende besser den WideString, da der String erstmal nicht über EXE-
DLL-Grenzen hinweg verwaltbar und dazu noch ein delphieigener Typ ist).
Du darfst also nur Typen und Methoden nutzen, welche überall existieren.
Zitat:
b. fenster enthalten
Das schließt sich mit A etwas aus, es sei denn du arbeitest
NonVCL und oder die Fenster der
DLL/Prlugins interagieren nicht mir denen der EXE/Anwendung.
Am Einfachsten, stelle eine Schnittstelle her, über welche die Plugins eine Form zusammenbasteln können.
So mit Funktionen wie ErstelleFenster, ErstelleEdit ... und die Callbacks (die Ereignismethoden ala OnClick wieder über ein Interface im Plugin weiterleiten)
Und schon hast du auch C und D gelöst, da dieses direkt in der Anwendung verwaltet werden kann.
So sind zwar nur "einfache" Fenster möglich, aber immerhin ist dann alles aus einer Hand und eine Anwendung behält die vollte Kontrolle. (ist z.B. gut, falls irgendwann auch noch Themes, bzw. eine Design-Enginge eingesetzt werden sollen)
PS:
http://www.delphipraxis.net/internal...lugin+tutorial
http://www.delphipraxis.net/internal...lugin+tutorial
Und willkommen an Board