Einzelnen Beitrag anzeigen

Sfaizst

Registriert seit: 16. Jun 2008
33 Beiträge
 
#1

Procedure aus Programm mittels DLL aufrufen (parameterübergabe!?)

  Alt 10. Nov 2011, 16:56
Delphi-Version: 2009
Hallo zusammen,

Ich habe mal wieder ein Problem

Ich möchte mit einer mittels CreateRemoteThread geladenen dll eine procedure welche im Hauptprozess ist aufrufen, hier ein paar Zeilen zur Veranschaulichung:

Delphi-Quellcode:

...

type
  TWrite = Procedure(const APtr : Pointer);

...

var
  FWrite : TWrite;

...

implementation

procedure DoWrite(const Str:AnsiString);
var
  APointer : Pointer;
  //TID : Cardinal;
begin
    FWrite := Ptr($483DE0);
    APointer := Addr(Str[1]);
    FWrite(APointer);
    //CreateThread(nil,0,Ptr($483DE0),APointer,0,TID); Würde funktionieren ist jedoch nicht gewollt
end;
Rufe ich die procedure komplett ohne Parameter auf (entferne also "APtr") kommt genau das gleiche raus ...

Woran liegt das und wie übergebe ich den Parameter korrekt!?

Über Tipps bzw. ne erklärung für das würde ich mich riesig freuen...

Vielen Dank und Grüße

Sfaizst
  Mit Zitat antworten Zitat