XP自动扫雷

很老很老的代码,按键精灵使用的代码,做个存档

 //↓自定义扫雷速度
UserVar speed=DropList{"快速":0|"中速":1|"慢速":50}=1 "扫雷速度"
Dim WinmineHwnd
 //下面这句是遍历符合窗口标题("扫雷")的句柄保存到 WinmineHwnd 里
// Search 返回的信息是一个字符串, 格式如:33123|44356|20055|
 WinmineHwnd = Plugin.Window.Search("扫雷")
 //↓下面这句按“|”对上面的字符串进行分割,将找到的所有窗口句柄分成若干个字符串并保存到数组 MyArray 里面
MyArray = Split(WinmineHwnd, "|")
 //≡≡≡≡≡≡≡≡≡≡≡Split()函数说明≡≡≡≡≡≡≡≡≡≡≡
 // 假设 WinmineHwnd 的值为字串33123|44356|20055|
 // Split进行分割后, MyArray数组中的数组如下:
 // MyArray(0) = "33123"  <---第一窗口的句柄
// MyArray(1) = "44356"  <---第二窗口的句柄
// MyArray(2) = "20055"  <---第三窗口的句柄
// MyArray(3) = ""      <---第四窗口的句柄(说明只找到3个符合条件的窗口)
 //注意:① 数组的第一个元素, 读取的时候是 MyArray(0), 而不是 MyArray(1),
//即数组元素的下标是从 0 开始, 而不是从 1 开始的。
//② Search 返回的字符串尾部总是"|",所以数组的最后一个元素一定是空字串"",
 //即当使用 CLng() 函数来转换上面的MyArray(3)时将会出现“类型不匹配”错误
//≡≡≡≡≡≡≡≡≡≡Split()函数说明结束≡≡≡≡≡≡≡≡≡≡

 If UBound(MyArray)>=0 Then    
     For i=0 To UBound(MyArray)-1
         //下面这句将关闭扫雷程序(这步是为了避免重复破解而失败)
        Call Plugin.Window.CloseEx(CLng(MyArray(i)))      
     Next 
 End If
 //下面这句运行扫雷程序并延时500毫秒
Call RunApp("winmine.exe")
 Delay 500
 //↓再次查找标题为“扫雷”的窗口,窗口句柄保存为WinmineHwnd
 WinmineHwnd = Plugin.Window.Find(0,"扫雷")
 //↓如果查找不到标题为“扫雷”的窗口,则提示运行失败,否则进行破解并排雷
If WinmineHwnd = 0 Then
     MessageBox "扫雷程序运行失败!"
Else
     //↓获取扫雷窗口大小,GetWindowRect 返回的信息是一个字符串, 格式如:123|356|200|400
     Dim WinmineRect
     WinmineRect = Plugin.Window.GetWindowRect(WinmineHwnd)
     //↓按“|”对上面的字符串进行分割, 并保存到数组 RectArray 里面
    Dim RectArray
     RectArray = Split(WinmineRect,"|")
     
     //现在按键8.0版已经支持中文变量名,所以窗口边框坐标可以如下定义
    窗口左边 = RectArray(0)
     窗口上边 = RectArray(1)
     窗口右边 = RectArray(2)
     窗口下边 = RectArray(3)
    
     //↓判断XP主题,根据扫雷窗口边框颜色来判断
    // 只能识别经典主题和默认主题
    // 当系统使用其它主题时,扫雷可能不准确
    IfColor 窗口左边,窗口上边+30,"DA3407",0 Then
         XP主题 = "默认"
     Else
         IfColor 窗口左边,窗口上边+30,"C8D0D4",0 Then
             XP主题 = "经典"
         Else
             XP主题 = "不能识别的XP主题!"
             温馨提示 = MsgBox("你的系统主题不是默认或经典,扫雷可能不准确。" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "你确定要继续尝试扫雷吗?",vbYesNo,XP主题)
             If 温馨提示 = 6 Then
                 XP主题 = "默认"
             Else
                 //↓关闭扫雷窗口
                Call Plugin.Window.CloseEx(WinmineHwnd)
                 //↓结束程序
                Goto 结束程序
            End If
         End If
     End If
     
     //↓计算雷区第一格的坐标
    If XP主题 = "默认" Then
         x1=窗口左边+23
         y1=窗口上边+112
     Else
         x1=窗口左边+23
         y1=窗口上边+103
     End If
     
     //↓计算雷区横格总数,小雷格子是16×16的
    横格总数 = Int((窗口右边-x1)/16)
     //↓计算雷区竖格总数,Int() 是取整函数
    竖格总数 = Int((窗口下边-y1)/16)
     
     //↓扫雷窗口置前
    Call Plugin.Window.Top(WinmineHwnd, 0)
     
     //↓破解扫雷窗口
    Call 破解扫雷程序()
     
     //↓锁定鼠标
    LockMouse
     //↓记下鼠标位置以便稍后回到原处
    SaveMousePos
     //↓用鼠标扫描整个雷区
    i=0
     While i<竖格总数
        j=0
         y=y1+i*16
         While j<横格总数
            x=x1+j*16
             
             //↓先判断当前这格是否已经点开,
            //↓未点开的小雷格子是立体的,
            //↓即格子的左边缘(和上边缘)是白色的            
             IfColor x-7,y,"FFFFFF",0
                 //↓移动鼠标到这个未点开的格子上
                MoveTo x,y
                 //↓延时speed毫秒,(变量speed是个用户自定义变量)
                 Delay speed
                 //↓如果屏幕左上方的像素为白色,说明不是雷,单击左键
                IfColor 0,0,"FFFFFF",0 
                     //↓注意这里不是用普通的单击左键,而是用了Bkgnd后台插件的单击左键
                    Call Plugin.Bkgnd.LeftClick(WinmineHwnd, x-窗口左边, y-(y1-64))
                 Else
                     //↓如果屏幕左上方的像素为黑色,说明是雷,单击右键标记(其实可以不标记)
                    IfColor 0,0,"000000",0
                         Call Plugin.Bkgnd.RightClick(WinmineHwnd, x-窗口左边, y-(y1-64))
                     Else
                         //↓屏幕左上方的像素不是白色也不是黑色,说明破解没有成功
                        MessageBox "抱歉,扫雷程序没有破解成功,程序即将终止!" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "请再尝试一两次,实在不行请联系QQ:82199975"
                         //↓关闭扫雷窗口
                        Call Plugin.Window.CloseEx(WinmineHwnd)
                         //↓结束程序
                        Goto 结束程序
                    End If 
                 End If 
             End If 
             j=j+1
         WEnd 
         i=i+1
     WEnd
     //↓取消鼠标锁定
    UnlockMouse
     //↓取消扫雷窗口置前
    Call Plugin.Window.Top(WinmineHwnd, 1)
     //↓鼠标回到原处
    RestoreMousePos
 End If
 ////↓脚本停止运行
Rem 结束程序
EndScript
 //↓以下是子程序
Sub 破解扫雷程序()
//↓激活扫雷窗口
    Call Plugin.Window.Active(WinmineHwnd)
     //↓更改窗口标题
    Select Case speed
     Case 0
         WinmineTitle = "扫雷-快速模式"
     Case 1
         WinmineTitle = "扫雷-中速模式"
     Case 50
         WinmineTitle = "扫雷-慢速模式"
     End Select
     Call Plugin.Window.SetText(WinmineHwnd,WinmineTitle)
     //↓连续按下键盘上X、Y、Z、Z、Y、Shift来破解扫雷程序
    //做完这一动作后鼠标所指的格子如果是雷,则屏幕最左上角的像素为黑色,否则为白色
    //请不要问我为什么会这样,因为我也不知道
    KeyPress "X", 1
     KeyPress "Y", 1
     KeyPress "Z", 1
     KeyPress "Z", 1
     KeyPress "Y", 1
     KeyPress "Shift", 1
 End Sub
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,997评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,603评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,359评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,309评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,346评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,258评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,122评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,970评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,403评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,596评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,769评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,464评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,075评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,705评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,848评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,831评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,678评论 2 354

推荐阅读更多精彩内容