C++如何使用读取进程内存查找进程内存中使用的最后一个(偏移量 - 地址)

C++ how to find last (offset - adress) used in processmemory with use readprocessmemory

本文关键字:内存 最后一个 偏移量 地址 读取 何使用 取进程 查找 C++ 进程      更新时间:2023-10-16

我使用此代码来readprocessmemory

  BOOL WINAPI ReadProcessMemory(
    _In_  HANDLE  hProcess,
    _In_  LPCVOID lpBaseAddress,
    _Out_ LPVOID  lpBuffer,
    _In_  SIZE_T  nSize,
    _Out_ SIZE_T  *lpNumberOfBytesRead
    );
char value[5]; 
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, 6500);
{
    ReadProcessMemory(hProcess, (LPVOID)105477, value, 5, 0);
}

它的工作 100%

但我想知道如何知道进程内存中使用的最后一个偏移量 - 在我阅读之前

查看图片:在此处输入图像描述

此进程内存中的最后一个偏移量是 7FFE0FFF - 但是在读取进程内存之前如何获取它

好吧,如果您绝对确定可以读取其他进程的内存,它可能会起作用......无论如何,这是一种非常危险的方法,有更好的IPC API可以做这些事情!

除非您自己编写调试器...事实上,ReadProcessMemory在这里引用了"用于调试的过程函数"https://msdn.microsoft.com/it-it/library/windows/desktop/ms680549(v=vs.85(.aspx