Einzelnen Beitrag anzeigen

choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#8

Re: Diverse Fragen zum Assembler Operator call

  Alt 18. Nov 2003, 15:17
@OLLI: ...Und wenn Du einmal "fast" die Lösung sehen willst, wie die "Referenz auf Self" automatisch geladen wird, guck Dir mal
Delphi-Quellcode:
{ Standard window procedure }
{ In    ECX = Address of method pointer }
{ Out   EAX = Result }

function StdWndProc(Window: HWND; Message, WParam: Longint;
  LParam: Longint): Longint; stdcall; assembler;
asm
   //...
        MOV EAX,[ECX].Longint[4]
        CALL [ECX].Pointer
        ADD ESP,12
        POP EAX
end;
an und verfolge, wie denn nun tatsächlich der Wert nach ECX kommt...
Lustige Variante, die insbesondere deshalb Interessant weil seit D5 unverändert und die Adresse von WndProc des Fensterhandles "von außen" ermittelbar ist
gruß, choose
  Mit Zitat antworten Zitat