ReadProcessMemory会被检测到吗?_仅完成部分readprocess如何解决
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.cn/186007.html原文链接:https://javaforall.cn
相关文章
- EasyCVR云端录像模块无法进行下载是什么原因?该如何解决该问题?
- 电脑dnf,DNF卡顿如何解决_DNF卡顿如何解决 教你调整电脑参数畅玩游戏_52PKDNF「建议收藏」
- 端口timewait如何解决_如何检测端口状态
- 开发那些事儿:如何解决js打包文件体积过大导致的网页加载慢问题?
- 织信Informat如何连接其他应用?
- 网页设计如何进行?详解网页设计的8大流程步骤
- Python写入csv出现空白行,如何解决?
- 如何在vs2019中启用.NET 6预览版
- Linux基础:如何定位后台服务偶发崩溃的解决方法
- 如何彻底理解反射详解编程语言
- SQL Server死锁:如何避免及解决(sqlserver死锁)
- Oracle 视图 ALL_SCHEDULER_JOB_RUN_DETAILS 官方解释,作用,如何使用详细说明
- Oracle 视图 ALL_TAB_COL_STATISTICS 官方解释,作用,如何使用详细说明
- Oracle 视图 V$FS_OBSERVER_HISTOGRAM 官方解释,作用,如何使用详细说明
- MySQL如何创建有效的索引(mysql如何创建索引)
- SQL Server的死锁:如何解决?(死锁sqlserver)
- 报名Oracle考试,轻松踏上晋升之路!(oracle如何报名)
- 如何解决MySQL外部无法访问的问题?(mysql外部无法访问)
- Linux如何快速打开文件(linux怎样打开文件)
- MySQL 导出被禁止,该如何解决(mysql 不允许导出)
- MySQL大小写问题 如何解决MySQL不能识别大小写的问题(mysql不能识别大小写)
- 如何解决mySQL不打勾的问题(mySQL不打勾)
- 如何解决Oracle SGA太小的问题(oracle sga太小)