Einzelnen Beitrag anzeigen

Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Adresse einer funktion im hauptmodul herausfinden

  Alt 10. Jul 2005, 19:14
hier nochmal die relevanten stellen aus dem hauptprogramm:

Delphi-Quellcode:
type PInt = ^integer;
     TIntfunc=function(iParam:integer):integer;
     TPFunc =function(pParam:PInt):boolean;

var
  Form1: TForm1;
  param:integer;
  fetchfunc:TPfunc;
  mainfunc:TIntFunc;
  modhandle:THandle;


function TForm1.dosomething(iParam:integer):integer;
begin
application.MessageBox(PChar('Die dll meldet: '+inttostr(iParam)),'Erfolg');
result:=0;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
@fetchfunc:=getProcAddress(modhandle,'FetchFunc'); //fetchfunc krallt sich die adresse der übergebenen funktion
@mainfunc:=getProcAddress(modhandle,'Main'); //mainfunc ruft die übergebene funktion auf

fetchfunc(@self.dosomething); // hier der fehler: E2036 Variable erforderlich
mainfunc(strtoint(edit1.Text)); //wie bereits gesagt: mainfunc ruft....
end;
die dll kompiliert anstandslos, aber das haptprog nicht.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat