Delphi外挂辅助技术入门篇、Windows扫雷程序示例

程序本身就不多说了、应用很基础、代码里的注释也比较详细、、

而且基本是使用api完成、所以改VB/VC++等都是很容易的
至此、也基本了解了扫雷程序的工作原理(猜测)
1.随机产生列阵、等待用户
2.判断用户首次左键单击位置是否为雷区、如果不是则继续、若是的话、重新排列列阵、让用户首次单击区域不为雷区(我猜想是为了不让游戏这么快的结束)
3.一旦首次判断完成、列阵则已经被确定、不再更改
4.扫雷程序界面上提示的数字、预先并没有生成、只是在用户将要把他翻开时判断四周9个点、才显示出来的、

“自动完成”部分我没写完、应该是坐标的判断有点问题、也就不弄了、有兴趣的同学可以参考重写(照着我这个修改可能比你重写还难)、这也是我第一次弄这方面的、所以写的很乱、、


 以下文字提示的意义
 全部采用全角字符显示、为了对齐好看
 “确”表示是程序没有预判的结果、
 13: st:='?';//用户标记的“?”
 14: st:='错';//用户标错为雷、即他本身并不是雷
 15: st:='不';//未确定、可能会改变、应该就是未翻开、但也不是雷的区域
 64: st:='空';//Hex 40 已翻开
 //151: st:='空';//未翻开
 65: st:='1';//Hex41
 66: st:='2';//程序标出的数字
 67: st:='3';
 68: st:='4';
 69: st:='5';
 70: st:='6';
 71: st:='7';
 72: st:='8';
 73: st:='9';
 142: st:='标';//用户标记为雷、并且正确的
 143: st:='雷';//真正的雷
 138: st:='未';//游戏结束后、你没有挖出的雷
 204: st:='中';//游戏结束后、你已经踩中的雷

以下是代码

My New Blog : http://blog.fdlife.info/ The more you know, the less you believe.
原文地址:https://www.cnblogs.com/ForDream/p/1924468.html