博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows系统调用 遍历进程的虚拟地址
阅读量:7027 次
发布时间:2019-06-28

本文共 1468 字,大约阅读时间需要 4 分钟。

1 #include "iostream"  2 #include "windows.h"  3 #include "shlwapi.h"  4 #include  "iomanip"  5 #pragma comment(lib,"shlwapi.lib")  6 using namespace std;  7   8 inline bool TestSet(DWORD dwTarget,DWORD dwMask){  9     return ((dwTarget&dwMask)==dwMask); 10 } 11  12 #define SHOWMASK(dwTarget,type)\ 13     if(TestSet(dwTarget,PAGE_##type))\ 14 {cout<<","<<#type;} 15  16 void ShowProtection(DWORD dwTarget) 17 { 18     SHOWMASK(dwTarget,READONLY); 19     SHOWMASK(dwTarget,GUARD); 20     SHOWMASK(dwTarget,NOCACHE); 21     SHOWMASK(dwTarget,READWRITE); 22     SHOWMASK(dwTarget,WRITECOPY); 23     SHOWMASK(dwTarget,EXECUTE); 24     SHOWMASK(dwTarget,EXECUTE_READ); 25     SHOWMASK(dwTarget,EXECUTE_READWRITE); 26     SHOWMASK(dwTarget,EXECUTE_WRITECOPY); 27     SHOWMASK(dwTarget,NOACCESS); 28 } 29  30 void WalkVM(HANDLE hProcess){ 31     SYSTEM_INFO si; 32     ZeroMemory(&si,sizeof(si)); 33     GetSystemInfo(&si); 34  35     MEMORY_BASIC_INFORMATION mbi; 36     ZeroMemory(&mbi,sizeof(mbi)); 37  38     LPCVOID pBlock=(LPVOID)si.lpMinimumApplicationAddress; 39     while(pBlock
0){ 92 PathStripPath(szFilename); 93 printf(",Module:%s",szFilename); 94 } 95 printf("\n"); 96 pBlock=pEnd; 97 } 98 } 99 }100 101 void main(){102 103 WalkVM(GetCurrentProcess());104 getchar();105 }

 

转载于:https://www.cnblogs.com/593213556wuyubao/p/3801086.html

你可能感兴趣的文章
c#中自定义属性
查看>>
OpenStack云计算----安装与部署(中篇)
查看>>
Web在线升级系统
查看>>
erlang国际化时间转换(ISO 8601)
查看>>
Kubernetes集群部署
查看>>
Windows server 2008R2服务器系统登录密码破解
查看>>
Oracle Internal Research深入研究Oracle内部原理
查看>>
测试断言技巧
查看>>
NDK library "libgnustl_shared.so" not found
查看>>
我的友情链接
查看>>
cobbler------安装配置
查看>>
自己项目中PHP常用工具类大全分享
查看>>
java笔记整理——代理
查看>>
Oracle基于时间点的恢复
查看>>
【VMCloud云平台】拥抱Docker(七)创建属于自已的Docker Registry
查看>>
.net分页控件简单实现
查看>>
分布式反射拒绝服务drdos
查看>>
drbd性能优化总结
查看>>
初始化系统工作
查看>>
我的友情链接
查看>>