酷站(www.ku0.com)-致力于为互联网从业者提供动力!

热门关键词:  企业  as  baidu  c4rp3nt3r  美女
酷站

【云小站】新老客都返现+现金红包+瓜分60万奖池
酷站

VBA

旗下栏目: vbs hta htc perl DOS/BAT python VBA ColdFusion autoit PowerShell seraphzone linux shell Lua Golang Erlang ruby 游戏 远程脚本

VBA解决Windows空当接龙的617局的方法

来源:互联网搜集 作者:秩名 人气: 发布时间:2020-02-12
本篇文章主要介绍了VBA解决Windows空当接龙的617局的方法,对大家的学习或者工作具有一定的参考学习价值,感兴趣的小伙伴们可以参考一下,也感谢大家对酷站(ku0.com)的支持。

Windows的自带游戏空当接龙,其中第617局是比较难解的,需要尝试的次数比较多,而且经常忘记解法和步骤。

原本希望使用AutoIt或AutoHotkey、AAuto一类的工具,写一段自动化脚本快速解决这一局,但这些工具需要安装,而且容易被当做病毒。通过Office中的VBA调用Windows的API,对游戏窗口发送按键消息,可以快速演示解法。
 

Declare Function FindWindow Lib "user32" Alias _
  "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    
Declare Function SendMessage Lib "user32" Alias _
  "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  
Const WM_CHAR = &H102
  
Sub f()
s = "83 80 83 81 80 " & _
  "20 27 72 " & _
  "48 46 41 48 42 " & _
  "89 48 70 74 78 07 40 27 " & _
  "10 14 004 10 01 16 19 " & _
  "20 002 42 21 20 " & _
  "32 34 24 32 42 34 30 38 " & _
  "58 53 63 57 56 50 " & _
  "10 10 13 15 35 13 12 18"
  
h = FindWindow("FreeWClass", "空当接龙游戏 #617")
For i = 1 To Len(s)
  c = Mid(s, i, 1)
  m = 0.1
  If c >= "0" And c <= "9" Then
    a = SendMessage(h, WM_CHAR, Asc(c), 0)
  Else
    m = 0.3
  End If
  m = m + Timer: Do While Timer < m: DoEvents: Loop
Next
End Sub

版权声明:本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 959677720#qq.cn(#换@) 举报,一经查实,本站将立刻删除。

您可能感兴趣的文章:

原文链接:https://www.jb51.net/article/72179.htm

相关文章

  • VBA解决Windows空当接龙的617局的方法

    VBA解决Windows空当接龙的617局的方法

    Windows的自带游戏空当接龙,其中第617局是比较难解的,需要尝试的次数比较多,而且经常忘记解法和步骤。 原本希望使用AutoIt或AutoHotkey、AAuto一类的工具,写一段自动化脚本快速解决这一局,但这些工具需要安装,而且容易被当做病毒。......
    02-12

最新更新