Hi ho!
Ich habe eben diese deine Vorstellungen letztens im Versandprogramm hier auf Arbeit wie folgt umgesetzt: Jedes Modul liegt als
DLL vor und besitzt ein standardisiertes Interface. Die Hauptanwendung sucht in einem Verzeichnis alle
DLL's und versucht sie als Modul zu laden. Wenn das gelingt, kommt ein Eintrag in Treeview. Wenn der Nutzer einen Eintrag aus dem Treeview wählt, signalisiert das Hauptprogramm dem Modul, das es sein Hauptformular erstellen soll, erzeugt ein neues TabSheet und setzt das Modul-Fenster als Child ins neue Tabsheet.
Vielleicht hift dir das weiter. Diese Methode setzt natürlich voraus, das du deine Programme in
DLL's konvertierst. Alternativ könntest du auch deine Exen starten, die dir dann sagen, welche Fenster-Handles sie haben und dann lässt du dein Hauptprogramm die Fenster "fangen" und machst sie zu "deinen Kindern".