Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何检测人造鼠标移动?_Windows_Mouse - Fatal编程技术网

Windows 如何检测人造鼠标移动?

Windows 如何检测人造鼠标移动?,windows,mouse,Windows,Mouse,我们写了一个游戏,你可以尽可能快地射击目标,有人写了一个程序来自动射击目标(通过模拟鼠标移动/点击) 我怎样才能检测到这个?我曾想过监视鼠标速度等,但这似乎太容易了。如果有帮助,游戏在Windows上运行,用C++编写。难道就没有办法说这一运动不是来自硬件吗?从本质上看,它说这不能可靠地完成,因为有几个原因,其中一个原因是程序员会找到一种方法来绕过你试图做的任何事情 正如所建议的那样,启发式似乎是一个可行的选择。监控可变鼠标速度、未命中率和准确性、暂停、突然跳跃等。启发式的效果越好,程序员就越需

我们写了一个游戏,你可以尽可能快地射击目标,有人写了一个程序来自动射击目标(通过模拟鼠标移动/点击)

我怎样才能检测到这个?我曾想过监视鼠标速度等,但这似乎太容易了。如果有帮助,游戏在Windows上运行,用C++编写。难道就没有办法说这一运动不是来自硬件吗?

从本质上看,它说这不能可靠地完成,因为有几个原因,其中一个原因是程序员会找到一种方法来绕过你试图做的任何事情

正如所建议的那样,启发式似乎是一个可行的选择。监控可变鼠标速度、未命中率和准确性、暂停、突然跳跃等。启发式的效果越好,程序员就越需要让他的机器人更接近真正的玩家,他就越不成功


附言:即使是像《反击战》这样的著名射击游戏,也有一些能完美地为你射击一切的游戏,所以他们也不知道如何/也不想阻止它

恐怕你得依靠启发式。你用的是什么框架?Win32?DirectX?还有什么?制作下一个防黑客鼠标,它有一个额外的移动传感器。哦,等等……在游戏启动期间或游戏期间进行图灵测试,即“抓握”枪或其他什么,更改它以使自动脚本失败,因为它们不知道在哪里提供鼠标输入