Einzelnen Beitrag anzeigen

Profiler

Registriert seit: 30. Dez 2006
14 Beiträge
 
#10

Re: [DLL]Daten weg nach FreeLibrary

  Alt 25. Apr 2009, 22:48
Hallo,

das mit dem Copy hat mir immer InvalidPointerOperation geworfen.
Ich hab es jetzt aber folgendermaßen gelöst:
Delphi-Quellcode:
type
  PDllInformation = ^TDllInformation;
  TDllInformation = record
    Author: array[0..19] of Char;
    Version: array[0..9] of Char;
    Name: array[0..19] of Char;
  end;
In der Struktur waren vorher Strings deklariert, welche ich zu array of Char geändert habe.
In der DLL steht nun:
Delphi-Quellcode:
procedure GetDllInformation(pInfo: PDllInformation);
begin
  pInfo^.Author := DLL_AUTHOR;
  pInfo^.Version := DLL_VERSION;
  pInfo^.Name := DLL_NAME;
end;
... und der Zugriff erfolgt so:
Delphi-Quellcode:
constructor TDll.Create(FileName: String);
var
  Func: TFunctionGetDllInformation;
begin
  Inherited Create;
  fFileName := FileName;
  fDllHandle := 0;
  Load;
  Func := LoadFunction(DLL_GETINFO);
  Func(fInfo);
  Unload;
end;
Vielen Dank für eure Hilfe.

Gruß
Profiler
  Mit Zitat antworten Zitat