Hi,
ich möchte ein Plugin system schreiben dabei lade ich mit folgenden code die plug in
dll:
Delphi-Quellcode:
type
TProcInitPlg = procedure (ixi :IIxion; hlib: integer);
procedure TIxionPlugInSystem.LoadPlugIn(FFilename: string);
var
aProc: TProcInitPlg;
hDLL: HWND;
fProc: TFarProc;
inter: IIxion; // interface
begin
hDll := LoadLibrary(PChar(FFilename));
if hDLL <> 0 then begin
fProc := GetProcAddress(hDLL,'init');
if fProc <> nil then begin
@aProc := fProc;
end else Exit;
inter:=Self;
aProc(inter, hDll);
AddHLib(hDLL);
end;
end;
procedure TIxionPlugInSystem.AddHLib(h: integer);
begin
setlength(List, length(List)+1); // List ist array of integer
List[length(List)-1]:= h;
end;
Eine
dll kann man mit dem Code auch laden aber bei der 2
DLL kommt eine
AV. Woran liegt das ?
mfg, Björn