Also, ich habe es jetzt so gemacht:
Ich habe im Hauptprogramm und in dem PlugIn eine Message WM_UNLOADPLUGIN definiert. Beim Programmstart speichere ich das
Handle von der MainForm und übergebe diese beim Öffnen an alle PlugIns. Da meine Plug-In-DLLs auch Forms enthalten, kann ich ja auf Schließen des PlugIns reagieren. In einem solchen Event sende ich einfach eine Message an das MainFormHandle mit WM_UNLOADPLUGIN und siehe da... es ist weg und der Speicher ist auch korrekt freigegeben!
Zu der anderen Lösung von hoika: Dies scheint dann also das gleiche wie "meine" Lösung zu sein!
Danke für eure Hilfe.