Einzelnen Beitrag anzeigen

Tommy82

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

Re: Laufzeitfehler bei Variante in DLL

  Alt 21. Nov 2007, 16:27
Delphi-Quellcode:
library DLLTest2;

uses
  SysUtils,
  Classes,
  Unit2 in 'Unit2.pas{Form2};


Procedure Anzeigen;
var Form : TForm2;
BEGIN
 Form2 := TForm2.Create(NIL);
 Form2.Starten;
end;

 exports
   Anzeigen;

begin
end.
Aufgerufen wird die DLL wie folgt:
Delphi-Quellcode:
Procedure TForm1.Zeige_PlugIns(Dateiname: string; Name: string);
var
 PlugIns:TPlugIns;
 Handle : THandle;
BEGIN
 Handle := LoadLibrary(PCHAR(ExtractFilePath(ParamStr(0)) + '\PlugIns\' + Dateiname));
 IF Handle <> 0 THEN
 BEGIN
   @PlugIns := GetProcAddress(Handle, PCHAR(Name));
   IF @PlugIns <> NIL THEN
     PlugIns
   ELSE
     Showmessage('Fehler beim Laden der Datei "'+Dateiname+'"');
 END;
 FreeLibrary(Handle);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  zeige_DLL('DLLtest2.dll','Anzeigen')
end;
Als fehler bekomme ich nun : "Zugriffsverletzung bei Adresse 01E61FAB in Modul 'DLLtest2,dll'. Lesen von Adress 00000000."

Aber nur bei der oben genannten zeile.

mfg

Tommy82
  Mit Zitat antworten Zitat