@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