Его чтение первых трех адресов справа и последнее неправильно ... Игнорировать код мусора Я noob Я просто не могу понять, почему 4-й адрес не имеет значения, даже если я использую тот же адрес в качестве одного из других возвращает неверное значение ...Проблема с Delphi ReadProcessMemory
procedure ReadFirstCard(Address: Integer);
var
Handle,i,a,b,c : Integer;
begin
GetWindowThreadProcessId(FindWindow(nil, PAnsiChar(Client)), @ProcessId);
Handle := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
ReadProcessMemory(Handle, Ptr(Address), @NewValue, Data, CardRead);
CloseHandle(Handle);
end;
procedure ReadFirstCardSuit(Address2: Integer);
var
Handle,i,a,b,c : Integer;
begin
GetWindowThreadProcessId(FindWindow(nil, PAnsiChar(Client)), @ProcessId);
Handle := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
ReadProcessMemory(Handle, Ptr(Address2), @NewValue2, Data2, CardRead2);
CloseHandle(Handle);
end;
procedure ReadSecondCard(Address3: Integer);
var
Handle,i,a,b,c : Integer;
begin
GetWindowThreadProcessId(FindWindow(nil, PAnsiChar(Client)), @ProcessId);
Handle := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
ReadProcessMemory(Handle, Ptr(Address3), @NewValue3, Data3, CardRead3);
CloseHandle(Handle);
end;
procedure ReadSecondCardSuit(Address4: Integer);
var
Handle,i,a,b,c : Integer;
begin
GetWindowThreadProcessId(FindWindow(nil, PAnsiChar(Client)), @ProcessId);
Handle := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
ReadProcessMemory(Handle, Ptr(Address4), @NewValue4, Data4, CardRead4);
CloseHandle(Handle);
end;
Проблема с lol была я читал по многим байтам – Bryan
, если да, то либо принимайте ответ Роба, либо добавляйте свой собственный ответ. – RBA