卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章30667本站已运行3722

微信免扫码一键登录多个账号的脚本

一、效果图
效果图
如果这也是你刚好需要的,请继续看下文。

二、起因
每次电脑开机需要登录2个微信,登第二个都需要扫码,糟心。
论坛里也有好几个解决方案,但用起来较麻烦,并不是我需要的。
免登的原理也不复杂,也没有啥高端操作,所以干脆自己整一个。

三、前期准备
需要先打上双开补丁,有现成的,自行食用
这里放一个https://github.com/huiyadanli/RevokeMsgPatcher
四、原理
微信扫码登入凭证缓存在 ...\WeChat Files\All Users\config 文件夹内;
里面有2个文件,ini和data文件,需要切换账号直接替换这两个文件就行了;
五、脚本代码
新建一个bat 文件将脚本复制进去就ok了,例如 wechat.bat 。
@echo off
chcp 65001 > nul

rem 干掉所有wechat进程,不需要可以注释
rem taskkill /f -im wechat.exe > nul

rem 开启延时变量
setlocal EnableDelayedExpansion

rem 判断BAT文件是否在WeChat Files\All Users下
if "%cd:~-9,-1%" neq "All User" ( 

    rem 弹窗提示
    msg * "请将脚本放在WeChat Files\All Users目录内

    rem 终止脚本
    exit
)

rem 获取的微信安装目录不正确,请手动指定下方第21行 WeChatPath 变量,并删除rem注释
rem set WeChatPath=D:\Program Files\Tencent\WeChat

rem 判断是否手动设置WeChatPath
if "%WeChatPath%" equ "" (
    rem 从注册表获取微信安装目录,如果获取的安装目录不正确,请手动指定下方第21行 WeChatPath 变量,并删除rem注释
    for /f "skip=1 delims=: tokens=1,*" %%i in ('REG QUERY "HKEY_CURRENT_USER\Software\Tencent\WeChat" /v "InstallPath"') do ( 

        set str=%%i
        set var=%%j

        set "var=!var:"=!"
        if not "!var:~-1!"=="=" set WeChatPath=!str:~-1!:!var!
    ) 
)

rem 安装目录WeChat.exe是否可访问
if not exist "%WeChatPath%\WeChat.exe" (

    rem 弹窗提示
    msg * "获取的安装目录不正确,请手动指定 第21行 WeChatPath 变量"

    rem 终止脚本
    exit
)

rem 模拟按键回车,不需要直接删除
    echo Set objShell = WScript.CreateObject("WScript.Shell") > login.vbs
    rem 延迟500ms,程序启动慢的话稍微延长点
    echo WScript.Sleep 500 >> login.vbs
    rem 模拟回车
    echo objShell.SendKeys "{ENTER}" >> login.vbs
rem 模拟按键回车,不需要直接删除

rem 遍历All Users下的文件夹
for /d %%i in ( * ) do (

    rem 获取目录名
    set ml2=%%i

    rem 过滤config文件夹
    if  !ml2! neq config (

        rem 拷贝凭证文件
        xcopy "%cd%\!ml2!\" "%cd%\config\" /s /e /y > nul

                rem 这里可以延迟1秒,按实际运行情况调整
        rem choice /t 1 /d y /n > nul

        rem 打开微信
        start "" "%WeChatPath%\WeChat.exe"

        rem 模拟按键回车,不需要直接删除
            cscript login.vbs > nul
        rem 模拟按键回车,不需要直接删除

        rem 这里可以延迟1秒,按实际运行情况调整
        rem choice /t 1 /d y /n > nul
    )
)

rem 模拟按键回车,不需要直接删除
    del login.vbs
rem 模拟按键回车,不需要直接删除
 
卓越飞翔博客
上一篇: Python 本地运行轻量级聊天AI,无需网络,无需显卡
下一篇: 返回列表

相关推荐

留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏