vc ++ 实现检测变速齿轮,变速精灵, 变速类辅助工具

news/2025/1/15 15:38:29/

因为项目需要,我需要检测出变速类辅助工具正在对项目程序进行加速。从网上找了很多资料,有很多高手提出HOOK API等解决方案。本人小菜一枚,看得不太明白,经过一番尝试,找到了另外一个方式来实现目的。


首先,我看了一位高手对变速齿轮的分析,原文地址:http://tieba.baidu.com/p/3127683095

他说变速齿轮主要对GetTickCount() 和 timeGetTime() 进行了修改,于是我想到Sleep函数是直接与操作系统打交道的(具体的原理我不清楚,有高手看到还请指教),它应该不会受到影响,也就是说Sleep(1000),基本上也就是挂起线程1000ms。于是我得到一个启发,在时间校验线程里首先通过GetTickCount()得到一个时间start,然后Sleep(1000),接下来再次通过GetTickCount()得到一个时间end,这两个时间相减(end-start)应该就是Sleep(1000)中过去的时间,单位毫秒。如果相减的结果超过了1100毫秒(我主要考虑到一个容错值)那么就可以判定启用了变速齿轮,我这里主要是检测加速,所以这样就行了。减速也是一样的,非常的容易。


这个方法我测试了Win7/8 和xp系统下的主流变速工具,都可以检测出来。如果有高手知道原理或者看出什么问题,请一定指教一下,谢谢!


附上时间校验线程函数的代码:

UINT TimeCheckThread(LPVOID lpParament)
{CMyDlg *pThis = (CMyDlg *)lpParament;DWORD dwStart = GetTickCount();Sleep(1000);DWORD dwEnd = GetTickCount();if(dwEnd-dwStart>1100) // 加速超过1.1倍{double *pTimes = new double;*pTimes = (dwEnd-dwStart)/1000.0;SendMessage(pThis->m_hWnd,UM_TIMEABNORMAL,(WPARAM)pTimes,0);// 校验不通过}return 0; 
}

运行效果:



http://www.ppmy.cn/news/378390.html

相关文章

c++引用与指针

C中的引用和指针都是用于访问内存中的数据,但它们之间有一些重要的区别。 定义方式 定义指针时需要使用星号(*)来声明一个指针变量,例如: int* ptr nullptr; // 定义指向整数的指针而定义引用时则需要使用引用符号…

第五十六章 镜像中断程序 - 计划外停机程序

文章目录 第五十六章 镜像中断程序 - 计划外停机程序计划外停机程序备份故障转移成员的计划外中断具有自动故障转移的主要故障转移成员的计划外中断未发生自动故障转移时主要故障转移成员的计划外中断手动强制故障转移成员成为主要成员 第五十六章 镜像中断程序 - 计划外停机程…

【阻塞队列BlockingQueue非阻塞队列ConcurrentLinkedQueue同步队列SyncQueue】

文章目录 阻塞队列BlockingQueue非阻塞队列ConcurrentLinkedQueue同步队列SyncQueue小故事 阻塞队列BlockingQueue 阻塞队列是一种数据结构,它具有线程安全性,可以用于多线程环境中的生产者消费者模式,其中生产者将消息插入队列,…

小程序图片截取

总结微信小程序图片截取 1. 将图片进行合理的等比缩放显示,使之能很好的显示在屏幕上。 2.采用画布,ctx.drawImage(根据缩放的图片,设置绘制图片大小) ctx.draw绘制在画布上。 3.在ctx.draw的回调中调用微信小程序wx.canvasToTempFilePath导…

【云原生 | 54】Docker三剑客之Docker Compose应用案例二:大数据Spark集群

🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专…

第三方网站无法引用微信图片

解决此图片来自微信公众平台未经允许不可引用问题&#xff0c;第三方网站无法引用微信图片 在html上加下面这句话就可以 //html <meta name"referrer" content"never">原理&#xff1a;HTTP Referrer是header的一部分&#xff0c;当浏览器向web服务…

SpringBoot上传图片到本地并在线预览

SpringBoot上传图片到本地并实现URL预览 0.预期效果 项目上传的图片保存到本地磁盘上&#xff0c;返回给前端一个地址&#xff0c;前端根据该地址可以在浏览器上访问查看该图片&#xff08;感觉和上传到服务器上没啥区别&#xff09; 1.创建项目 创建个SpringBoot项目&…

海边小岛

第二天&#xff0c;开车去大海里的一个岛屿之上&#xff0c;体会这岛屿与陆地不一样的感觉.午餐又是吃海鲜&#xff0c;青色的贝壳&#xff0c;花哈&#xff0c;螃蟹&#xff0c;皮皮虾等等&#xff0c;想起之前公司去黄山的时候吃的竹笋&#xff0c;野味&#xff0c;山里的野菜…