add 硬件控制模块 (hardware_control.py) 并修复游戏状态扫描区域宽度

- 新增 wyhkm.dll 硬件盒子 COM 接口封装,支持键盘鼠标控制
- 修复 game_state_config.json 中 scan_region_width 过小导致截图越界的问题
- 添加鼠标路径录制器、硬件测试脚本等工具
- 更新多项配置默认值

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
王鹏
2026-04-15 12:15:00 +08:00
parent b4de5278ed
commit 33dc741fd9
203 changed files with 12197 additions and 247 deletions

View File

@@ -0,0 +1,36 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>ʹ<EFBFBD>÷<EFBFBD><EFBFBD><EFBFBD></title>
<link rel="stylesheet" type="text/css" href="css/mystyle.css">
</head>
<body>
<h1>ʹ<EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD></h1>
<p><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>wyhkm.dllģ<6C><C4A3><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>֧<EFBFBD><D6A7>windows7<73><37><EFBFBD>Ժ<EFBFBD><D4BA>IJ<EFBFBD><C4B2><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>wyhkm.dll<6C>ĵ<EFBFBD><C4B5><EFBFBD>֧<EFBFBD>ֱ<EFBFBD>׼dll<6C>ӿں<D3BF>com<6F>ӿڡ<D3BF>wyhkm.dllģ<6C><C4A3><EFBFBD><EFBFBD>32λ<32><CEBB>64λ<34><CEBB><EFBFBD>֣<EFBFBD>32λ<32><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32λģ<CEBB>飬64λ<34><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64λģ<CEBB></p>
<p><EFBFBD><EFBFBD>׼dll<EFBFBD>ӿڵĵ<EFBFBD><EFBFBD>ú<EFBFBD>ϵͳAPIһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD></p>
<p>com<EFBFBD>ӿںͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>com<EFBFBD>ӿڵ<EFBFBD>dllһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>ģ<EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
<h2>COM<EFBFBD>ӿڵ<EFBFBD><EFBFBD><EFBFBD></h2>
<h3>1.ע<></h3>
<p>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><EFBFBD>°<EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>дע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD>ڵ<EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD>µĽ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD></p>
<p>1)<29><><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><E1B7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬһ̨<D2BB><CCA8><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD>仯ʱ<E4BBAF><CAB1>ֻҪע<D2AA><D7A2>һ<EFBFBD>μ<EFBFBD><CEBC>ɡ<EFBFBD><br />
ע<>᱾ģ<E1B1BE><C4A3><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>regsvr32<33><32><EFBFBD>Ҳ<EEA3AC><D2B2><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><D3B5>ñ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>DllRegisterServer<65>ӿڡ<D3BF><br />
ע<>᱾ģ<E1B1BE><C4A3><EFBFBD><EFBFBD>vbs<62><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ԱȨ<D4B1><C8A8>)<29><><br />
Set wshshell = CreateObject(&quot;wscript.shell&quot;)<br />
wshshell.run &quot;regsvr32 /s &quot;&quot;D:\Plugin\wyhkm.dll&quot;&quot;&quot;<br />
<20>޹<EFBFBD><DEB9><EFBFBD>ԱȨ<D4B1><C8A8>ע<EFBFBD><D7A2>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><br />
Set wshshell = CreateObject(&quot;wscript.shell&quot;)<br />
wshshell.run &quot;regsvr32 /s /n /i:user &quot;&quot;D:\Plugin\wyhkm.dll&quot;&quot;&quot;</p>
<p class="redfont">ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64λϵͳ<EFBFBD><EFBFBD>ʹ<EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>32λģ<EFBFBD>飬˫<EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vbs<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64λ<EFBFBD>ű<EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C:\Windows\SysWOW64\cmd.exe<78><65><EFBFBD>ٵ<EFBFBD><D9B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>vbs<62><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>ˡ<EFBFBD></p>
<p>2)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><E1B7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>DllInstall<6C><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32λ<32><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32/64λ<34><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2(32λģ<CEBB><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32λ<32><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64λģ<CEBB><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>64λ<34><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>0ʱע<CAB1><D7A2><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>vbs<62><73>֧<EFBFBD><D6A7>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>dll<6C>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD></p>
<h3>2.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
<p>
ģ<><C4A3><EFBFBD>еĺ<D0B5><C4BA><EFBFBD>ʹ<EFBFBD><CAB9>ǰ<EFBFBD><C7B0><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD><br />
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD>vbs<62><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><br />
Set wyhkm=CreateObject("wyp.hkm")</p>
<p><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><br />
Set wyhkm=CreateObject("wyp.hkm")<br />
ver = wyhkm.GetVersion()<br />
MsgBox "ģ<><C4A3><EFBFBD><EFBFBD><E6B1BE>" & Hex(ver), 4096</p>
</body>
</html>