Pascal 代码,原理相同的。
{$APPTYPE GUI}
{$MODE DELPHI}
Uses Windows;
Var
dwEipTest:Pointer;
strEipTest:QWORD;
Function sprintf(lpOut:PChar;lpFmt:PChar):LONG;
varargs;cdecl;external 'user32' name 'wsprintfA';
Function GetEIP():DWORD;
asm
pop eax
jmp eax
end;
Begin
dwEipTest := Pointer(GetEIP());
sprintf(PChar(@strEipTest),'%08X',dwEipTest);
MessageBox(0,PChar(@strEipTest),Nil,0);
End.