easymule学习----校验dll信息
偶尔下了下easyMule的代码学习,看到一些较好的地方,贴一下:
校验dll的信息:
static bool CheckLangDLLVersion(const CString& rstrLangDLL) { bool bResult = false; DWORD dwUnused; DWORD dwVerInfSize = GetFileVersionInfoSize(const_cast<LPTSTR>((LPCTSTR)rstrLangDLL), &dwUnused); if (dwVerInfSize != 0) { LPBYTE pucVerInf = (LPBYTE)calloc(dwVerInfSize, 1); if (pucVerInf) { if (GetFileVersionInfo(const_cast<LPTSTR>((LPCTSTR)rstrLangDLL), 0, dwVerInfSize, pucVerInf)) { VS_FIXEDFILEINFO* pFileInf = NULL; UINT uLen = 0; if (VerQueryValue(pucVerInf, _T("//"), (LPVOID*)&pFileInf, &uLen) && pFileInf && uLen) { bResult = (pFileInf->dwProductVersionMS == theApp.m_dwProductVersionMS && pFileInf->dwProductVersionLS == theApp.m_dwProductVersionLS); } } free(pucVerInf); } } return bResult; }
步骤1:
GetFileVersionInfoSize() 获取dll信息的大小。
步骤2:
calloc() 开辟一块相应大小的区域,用于放置将要读出的dll信息。
步骤3:
GetFileVersionInfo()获取dll信息。
步骤4:
校验。
easymule学习----校验dll信息相关推荐
- 获取系统进程信息和进程依赖的dll信息--CreateToolhelp32Snapshot
http://www.cnblogs.com/qintangtao/archive/2013/02/26/2933734.html CreateToolhelp32Snapshot函数通过获取进程信息 ...
- 数论 初等数论 北师大 张秀平 自学 学习 经验 视频 信息 奥赛 NOIP
姐妹篇详见https://blog.csdn.net/mrcrack/article/details/87897210 数论 初等数论 北师大 张秀平 自学 学习 经验 视频 信息 奥赛 NOIP 初 ...
- ildasm.exe 查看c# dll 信息,符号 、函数等等
ildasm.exe 查看c# dll 信息,符号 .函数等等 运行 ildasm.exe 把 C# 的 dll 拖入程序中即可
- ECCV 2022 | 浙大快手提出CoText:基于对比学习和多信息表征的端到端视频OCR模型...
点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入-> CV 微信技术交流群 转载自:CSIG文档图像分析与识别专委会 本文是对快手和浙大联合研 ...
- 如何高效学习-随意信息处理-信息的记忆
如何高效学习-随意信息处理-信息的记忆 随意信息的处理 随意信息是整体性学习中的一个难点. 例如: ·一系列日期 ·解剖学术语 ·一系列步骤 ·各种各样的规章. 条例 ·科学公式 处理随意信息的方法需 ...
- Kail学习笔记-kali信息搜集工具之IKE-Scan
Kail学习笔记-kali信息搜集工具之IKE-Scan 一.用法 二.选项 三.示例 一.用法 ike-scan [选项] [主机地址...] 必须在命令行上指定目标主机,除非为–file选项,在这 ...
- 校验银行卡是否有效, 获取所属行, 校验预留信息
一. 校验银行卡是否有效以及所属行 支付宝的开放API, 银行卡校验接口 https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?cardNo ...
- Kail 学习笔记-kali信息搜集工具之Dmitry
Kail 学习笔记-kali信息搜集工具之Dmitry DMitry(Deepmagic Information Gathering Tool)是一个一体化的信息收集工具.它可以用来收集以下信息: 根 ...
- C1认证学习二(信息单位)
C1认证学习二(信息单位) 文章目录 C1认证学习二(信息单位) 学习目标 具体学习 存储单位 传输单位 转换格公式 举例: 学习目标 在计算机的内部,实际上都是使用的二进制的形式来进行存储.运算.处 ...
- 脱壳学习记录----DLL找OEP
还是做一些加密解密3的学习记录 文件链接:https://pan.baidu.com/s/1-KiagpsimjDBsyMF01ouxA 密码:tt8u 工具链接:https://pan.baidu. ...
最新文章
- wxPython的API下载
- 七、压缩与解压缩命令
- android 消除标题,Android Activity 去掉标题栏及全屏显示
- LeetCode 450. 删除二叉搜索树中的节点
- 使用MaxCompute LOAD命令批量导入OSS数据最佳实践—STS方式LOAD开启KMS加密OSS数据
- Android Studio 第六十三期 - Android框架 -RecycleView所有用法
- Android 常见adb命令
- 图片上传插件WebUploader的坑
- poj 3368 Frequent values rmq
- dhcp(客户端)协议使用哪个众所周知的端口号?_DHCP不详解
- QT与Coin3D实现机器人的仿真
- matlab BP神经网络入门
- 跟同事关系再好,这3种话宁烂肚里也别张嘴,莫让福运悄悄离开你
- cpufreq 五种模式
- lower_bound()/upper_bound()函数(C++)
- 5 Hibernate:Java Persistence API (JPA) 入门
- C++实现黑白棋算法
- The SwiftProgramming Language读书笔记第26页
- 公网使用win10自带远程桌面控制
- 【黑帽SEO大神揭秘】快速排名的黑帽技术有哪些?