判断指定进程是否为x64的方法(在ntdll判断某个x64函数是否存在)
2024-09-17 20:12:47
- BOOL IsWow64ProcessEx(HANDLE hProcess)
- {
- // 如果系统是x86的,那么进程就不可能有x64
- bool isX86 = false;
- #ifndef _WIN64
- isX86 = GetProcAddress(GetModuleHandle(TEXT("ntdll")), "NtWow64DebuggerCall") == nullptr ? TRUE : FALSE;
- #endif
- if (isX86)
- return FALSE;
- // 进程架构未知,系统是x64的,可以利用IsWow64Process函数判断
- typedef BOOL(WINAPI *ISWOW64PROCESS)(HANDLE, PBOOL);
- ISWOW64PROCESS fnIsWow64Process;
- BOOL isWow64 = TRUE;
- fnIsWow64Process = (ISWOW64PROCESS)GetProcAddress(GetModuleHandle(TEXT("kernel32")), "IsWow64Process");
- if (fnIsWow64Process != nullptr)
- fnIsWow64Process(hProcess, &isWow64);
- return !isWow64;
- }
先用OpenProcess打开目标进程,再把句柄传进去就OK了。
http://blog.csdn.net/aqtata/article/details/18361209
最新文章
- Autofac - 装配
- ViewPager循环显示
- Lua 栈的理解
- HTML 简介
- Linq学习总结1--参考Linq技术详解
- OpenGL中各种坐标系的理解[转]
- 中文Ubuntu系统根目录文件夹名称变为英文
- Functions类,一个Javascript的函数加法类,将两个函数加起来,顺序执行
- linux安装mysql出现Could NOT find Curses (missing CURSES_LIBRARY CURSES_INCLUDE_PATH)解决方法
- cell1这个字符串如何截取掉前边的cell剩下后边的数字 后边数字长度不固定
- Datediff函数 助你实现不同进制时间之间的运算
- android code 和js的交互
- angularJs-UI-bootstrap系列教程1(使用前的准备)
- jsp中的路径与跳转
- python 匿名函数与三元运算
- j2ee中spring的分布式事务实现及解决方案
- Linux计划任务及压缩归档(week2_day1)--技术流ken
- linux for循环 fork() 产生子进程
- 深入浅出Java探针技术2---java字节码生成框架ASM、Javassist和byte buddy的使用
- 记录一次配置golang服务器端口
热门文章
- scanf()常犯错误
- [转]linux下iftop工具的安装与使用详解(图文)——实时的网络流量,监控TCP/IP连接(单机)
- UITabBarController中自定义UITabBar
- IOS开发之UILabel动态高度设置方法
- Blog 转移
- WCF技术剖析之二十一:WCF基本异常处理模式[下篇]
- solr总结 第六部分:solr查询语法
- ASP.NET 4.5 Bundle组件(捆绑、缩小静态文件)
- Java读写Word文件常用技术
- UPC 2959: Caoshen like math 这就是个水题