Thema: Delphi DLL richtig beenden

Einzelnen Beitrag anzeigen

Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#9

Re: DLL richtig beenden

  Alt 10. Apr 2007, 16:21
Ich habe ein leeres Formular mal spaßeshalber benutzt, selbes Phänomen.

DLL (Aufruf des Formulars)
Delphi-Quellcode:
Procedure TestDll_Start;
var Form1 : TForm1;
BEGIN
 Form1 := TForm1.Create(NIL);
 Form1.ShowModal;
END;

exports
 TestDll_Start;

begin
end.
DLL (Beenden des Formulars)
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
 Form1.Free;
end;
nach dem ich auf den Beenden Button geklickt habe, bekomm eich einen Adress-Fehler.

Schon probiert :
Delphi-Quellcode:
Procedure TestDll_Start;
var Form1 : TForm1;
BEGIN
 Form1 := TForm1.Create(NIL);
 Try
  Form1.ShowModal;
 Finally
  Form1.Release;
 END;
END;

exports
 TestDll_Start;

begin
end.
.. aber das geht auch nicht.

Ich möchte das Formular gerne in eine DLL auslagern, da ich dieses Formular :
a) in mehreren Programmen verwenden möchte
b) ein Update des Formulars schneller möglich ist (ohne das Programm neu zu schreiben)

Nur sobald ich das Formular beende, bekomme ich immer : Zugriffsverletzung bei Adresse 0036D875 in Modul 'TestDll.dll'. Lesen von Adresse 00000000".

Wie kann ich nun das Formular beenden ohne einen Fehler zu bekommen?

mfg

Tommy82
  Mit Zitat antworten Zitat