ReadProcessMemory会被检测到吗?_仅完成部分readprocess如何解决

ReadProcessMemory会被检测到吗?_仅完成部分readprocess如何解决ReadProcessMemory从特定进程的内存里读取数据。被读取的整个位置应该是可读的否则操作会失败。BOOLWINAPIReadProcessMemory(__in  HANDLEhProcess,__in  LPCVOIDlpBaseAddress,__out LPVOIDlpBuffer,__in  SIZE_TnSize

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

ReadProcessMemory

从特定进程的内存里读取数据。被读取的整个位置应该是可读的否则操作会失败。

BOOL WINAPI ReadProcessMemory(

__in    HANDLE hProcess ,

__in    LPCVOID lpBaseAddress ,

__out  LPVOID lpBuffer ,

__in    SIZE_T nSize ,

__out  SIZE_T* lpNumberOfBytesRead 

);

参数:

hProcess:目标进程的句柄。这个句柄必须有 PROCESS_VM_READ 标记。

lpBaseAddress:一个指向目标进程需要读取数据的首地址的指针。在读取数据之前,系统将会确认需读取的所有数据是否可读,如果不可读那么函数执行失败。

lpBuffer:指向要接收读取到的数据的缓冲区。

nSize:读取的数据大小,单位为Bytes。

lpNumberOfBytesRead:指向一个变量,用于放置传送数据的大小。如果为NULL,该参数被忽略。

返回值:

成功:非零。

失败:零。

得到更多错误信息,使用 GetLastError 函数。

如果读到了不可读的内存,该函数会失败。

附注:

该函数从指定的进程读取内存数据到当前进程的内存。任何标记为 PROCESS_VM_READ 的句柄都能使用该函数。Typically but not always, the process with address space that is being written to is being debugged.(在很典型的情况下,可被写内存的进程是处于调试状态的。)

要求:

头文件:在Winbase.h里声明;包括Windows.h。

库:Kernel32.lib

动态链接库:Kernel32.dll

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186007.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号