delphi中如何进行基址+偏移运算?
delphi中如何进行基址+偏移运算?我是新手。刚来广海就学会了用delphi读取内存。但是现在不会进行基址+偏移运算附上:
完美当前血量[[+20]+464]
var
jb:Hwnd;
Pid:Cardinal;
jcjb:Thandle;
Hp:integer;
Num:DWORD;
begin
jb:=FindWindow(nil,'Element Client');
GetWindowThreadProcessId(jb,@Pid);
jcjb:=OpenProcess(PROCESS_All_Access,False,Pid);
ReadProcessMemory(jcjb,Pointer($009853dc),@Hp,4,Num);
label1.Caption:=inttostr(Hp);
end;
高手指教下。 var
jb:Hwnd;
Pid:Cardinal;
jcjb:Thandle;
Hp:integer;
Num:DWORD;
base:dword; //加个中转变量
begin
jb:=FindWindow(nil,'Element Client');
GetWindowThreadProcessId(jb,@Pid);
jcjb:=OpenProcess(PROCESS_All_Access,False,Pid);
ReadProcessMemory(jcjb,Pointer($009853dc),@base,4,Num);
ReadProcessMemory(jcjb,Pointer(base+$1c),@base,4,Num);
ReadProcessMemory(jcjb,Pointer(base+$20),@base,4,Num);
ReadProcessMemory(jcjb,Pointer(base+$464),@hp,4,Num);
label1.Caption:=inttostr(Hp);
end;
页:
[1]