【AHK】autohotkey 自动登陆战网暗黑2杀进程双开多开
使用软件:AHK v1.1.34,killhandle
期望实现的效果
1.自动杀DiabloII Check For Other Instances进程
2.自动登陆战网battle.net客户端,输入用户名密码,登陆,(登陆的蓝色按钮需要截图保存在同位置下,文件名login.bmp,图片样子见文章末尾)
3.自动点击进入游戏(识别login.bmp),到人物选择界面(需要截图右下角的删除按钮,保存为loading.bmp,图片样子见文章末尾),结束
4.实现双开,多开
使用说明:
a.需要在微软下载killhandle64.exe,本代码使用的是killhadle64.exe,根据系统不同可能要选择killhadle.exe,需要修改代码中的killhandle版本。未测试。
b.需要把handle64.exe复制到C:\Windows\SysWOW64 和 C:\Windows\System32文件夹下,否则会报找不到位置,可能跟AHK是32 还是64有关。
c.需要在前3行配置用户名,密码和游戏路径
d.以上可实现单开
e.多开就将代码1对应的AHK文件复制多个,修改前3行配置。然后新建个AHK文件调用前面复制的文件就行。调用的代码见代码2:
纯新手,代码比较冗余,高手请略过。
会不会导致封号,未知。慎用。
代码1:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;config;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ID=
PSW=
dir=D:\diabloR\Diablo II Resurrected\Diablo II Resurrected Launcher.exe
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;config;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MsgBox, 0, 杀进程, 杀!杀!杀! 此弹窗2秒后关闭, 2
;需要把handle64.exe复制到C:\Windows\SysWOW64 和 C:\Windows\System32文件夹,否则会报找不到位置,可能跟AHK是32 还是64有关。
shell := ComObjCreate("WScript.Shell"); 通过 cmd.exe 执行单条命令
pth :="C:\Windows\System32\handle64.exe "
exec := shell.Exec(pth "-a -p D2R.exe Instances"); 读取并返回命令的输出
sleep 2000
strText :=exec.StdOut.ReadAll()
s :=strsplit(strText, chr(10))
x :=s.MaxIndex()
for index, element in s
{stxt :=s[A_Index] ss :=strsplit(stxt,": ") if ss.Length() >1{{ sstxtA :=ss[2]sstxtB :=ss[3]x :=InStr(sstxtA, " ") - 1strINGleft,D2rPID,sstxtA,x ;获取D2R程序PID stringright,handle,sstxtB,4 ;获取DiabloII Check For Other Instances的handlecmdt := " handle64.exe -c " handle " -p " D2rPID " -y"ComObjCreate("Shell.Application").ShellExecute( "cmd.exe"," /c " cmdt,"","runas",1) ;杀进程}}
}
;以上杀进程
;RunWaitOne("killhandle.vbs " A_ScriptDir)sleep,2000
run,%dir%
Sleep, 1000
winex.wait("battle.net")
winex.findActivate("battle.net")
count :=1
while (count<100)
{imageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, login.bmpif ErrorLevel = 2{MsgBox 没有图片文件count :=99}else if ErrorLevel = 1{MsgBox, 0, 准备登陆, 找不到登陆按钮,找到后则输入用户名密码 此弹窗2秒后关闭, 2count++Sleep, 5000}else{;MsgBox,找到count :=999;Sleep, 2000}count++}Sleep, 200
; MsgBox,窗口打开
send +{Tab}
Sleep, 200
send {Delete}
SendInput {TEXT}%ID%
Sleep, 200
send {enter}
Sleep, 200
send {tab}
SendInput {TEXT}%PSW%
Sleep, 200
click %FoundX%,%FoundY%
;输完用户名,找登陆按钮
;Sleep, 5000
;登陆后,找登陆图标
count :=1
while (count<999)
{imageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, login.bmpif ErrorLevel = 2{MsgBox 没有图片文件count :=991}else if ErrorLevel = 1{MsgBox, 0, 准备进入游戏, 等待进入游戏按钮 此弹窗2秒后关闭, 2count++Sleep, 3000}else{click %FoundX%,%FoundY%count :=9999Sleep, 2000}count++}
winex.wait("D2R.EXE")
winex.findActivate("D2R.EXE")count :=1
while (count<999)
{imageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, loading.bmpif ErrorLevel = 2{MsgBox 没有图片文件count :=991}else if ErrorLevel = 1{MsgBox, 0, 准备进入游戏, 等待连接界面 此弹窗2秒后关闭, 2count++Sleep, 1000ControlSend ,,{SAPCE},D2R,,,}else{click %FoundX%,%FoundY%count :=9999Sleep, 1000}count++}
MsgBox, 0, 成功,游戏已打开 此弹窗2秒后关闭, 2
ExitApp
代码2:
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.runwait,1.AHK
runwait,2.AHK
;几开上面就增加几个,对应的就ahk文件也要复制几个。名称注意一致。
ExitApp
以上,有谁优化了代码,欢迎分享,谢谢!
【AHK】autohotkey 自动登陆战网暗黑2杀进程双开多开相关推荐
- Python模拟登录,Python识别图形验证码实现自动登陆
前言 利用Python识别图形验证码,selenium模块实现自动登陆.废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: re: numpy模块: pytess ...
- Linux多台服务器共用密钥ssh自动登陆
linux的秘钥产生与服务器无关,只和加密的方式(采用rsa或dsa)还有passphrase(密码短语,在生成秘钥的时候输入)有关. 如果是这样,同一对秘钥可以使用在多台服务器上,因为对于服务器和客 ...
- putty 保存密码 自动登陆 四种方法
Putty 基本是我在紧急时候用来登陆 Linux/Unix 终端的不二之先,因其小,开源,界面也非常实用.可是当你要在私有的机器上,经常性的要登陆很多机器的时候就觉得烦琐了,不光打开一堆的窗口,还要 ...
- windows进程管理器_软件进程自动重启一遍又一遍……你需要这款自动杀进程的小公举ProcessKO...
[PConline 应用]用Windows系统最烦的一件事,就是各种乱七八糟的进程.我们知道软件要运行,就会在后台唤起进程,但这些进程有时候并不那么听话,某些软件会不断唤起进程,对此Windows自带 ...
- 怎么在python下载网站内容-分析某网站,并利用python自动登陆该网站,下载网站内容...
本帖最后由 愤怒的小车 于 2019-5-8 09:41 编辑 一:本代码是我研究了好久才写出来,七功能主要有自动登陆.自动识别验证码.以及自动识别下载格式进行判断下载! 首先,搬上我们的主角网址,h ...
- 修改2k自动登陆的脚本
-- 修改2k自动登陆的脚本 main sub main() dim Auto,domain,user,paswword,auto1,domain1,user1,paswword1,reg,nl r ...
- Windows 自动登陆的简单方法
Windows 自动登陆的简单方法 原创 睡不着 2007-08-20 我们为电脑设置密码,目的就是为安全,而这个"安全"可以考虑到两个方面,一是本地用户:二是网络用户这个两个 ...
- 基于fiddler的网络爬虫校园网自动登陆系统
最近校园网(需要WEB登陆)不太稳定,总是掉线,于是想写一个基于网络爬虫的校园网自动登陆系统,让程序自动每隔一段时间自动检测网络连通性,查了一些资料,最后用了Fiddler软件进行网络监听,对网页ht ...
- windows10自动填充密码开机自动登陆
1 项目需求 需要用到远程登陆(远程登陆需要设置用户和密码),同时客户可以开机自动进入windows系统,运行的程序开机自启动. 2 步骤 2.1 Win+R 之后会调出运行命令框,然后在弹出的运行窗 ...
最新文章
- 二:SpringAOP
- typedef struct 先声明后定义_C++模版和C#泛型求同存异录(二)typedef
- wxHtml 示例:演示嵌入控件
- 为一个优秀的C++程序员
- android 如何保留数据两位小数
- 最全.Net学习资料库上线,今日可免费下载各类资源!(附百度云链接)
- ios html图片相对路径,iOS 下加载本地HTML/js/css/image 等路径问题
- CentOS 7 安装Mono 和 MonoDevelop
- 学习软件测试你不了解这7点你算是白学了...
- vm14远程连接服务器,VisualVM 远程连接服务器
- linux+qt经典教程+pdf下载,Qt入门教程 详细讲解版.pdf
- 巧用 10分钟邮箱 申请小红伞 免费KEY 92天
- 蒙特卡洛—赌博模型笔记
- 手机app界面及易用性测试点分析(通用)
- 笔记本光驱接口怎么外接台式机硬盘?
- wincc远程服务器配置,WINCC-OPC服务器配置
- grep的常用和次常用选项
- SpringBoot 查询今年所有节假日
- 利用js,HTML,css实现一个简单的指针时钟
- EasyExcel合并单元格策略样例