Zitat:
Ich habe halt eine
DLL und dort ist eine function.
Dazu zwei Fragen:
1. Hast du ShareMem im Hauptprogramm und in der
DLL als aller erste
Unit in der .dpr Datei eingefügt? (Wenn nicht kracht es irgendwann während das Programm läuft)
2.
Du erstellt das zweite Formular in der
DLL mit Hilfe dieser Funktion? Oder ist der
DLL-Code nicht von dir und du willst ihn nur nutzen?
Wenn du die Macht über den
DLL-Code hast, dann kannst du das Formular (sofern
VCL) in die Hauptanwendung einfügen, indem du vor dem Erzeugen des Formulars das Application.Handle auf die der Hauptanwendung setzt.
Delphi-Quellcode:
function CreateDllForm(AppHandle: THandle): TForm;
begin
Application.Handle := AppHandle;
Result := TMyForm.Create(Application);
end;
Stammt das Formular nicht von dir, oder ist kein
VCL Formular dann kannst du es an die Anwendung ankoppeln mit
SetWindowLong(w, GWL_HWNDPARENT, Application.Handle);