微信多开实现免扫码登录

微信多开实现免扫码登录

前几天写了一个解除微信多开限制的小工具,但是想着这个并不方便,所以就想着有没有办法实现每打开一个窗口时,如果微信已经登录,那就显示另一个账号,如果只有一个账号么就出现扫码界面,理论上是可以实现这样的功能的,所以我就针对这个问题研究了一番。

配置文件

微信配置路径(全局配置)

微信配置文件是整个微信安装后默认的配置文件,默认目录为:

$ %APPDATA%\Tencent\WeChat\All Users\config

目录结构

AppConfig.data		-- 应用配置文件,保存某一个文件的哈希值,具体不明;
update.data		-- 升级数据文件,空;
wechatApps.data		-- 微信应用程序,具体不明;
*.ini			-- 此目录只有几个ini文件,文件名随机生成,里面保存着文件管理目录路径等信息。
图片[1]-微信多开实现免扫码登录-枫落墨痕
All Users \ Config

用户配置路径(用户配置)

用户配置文件是我们每当登录一个微信号后自动生成的配置文件,默认目录为:

$ %USERPROFILE%\Documents\WeChat Files
  • 目录结构
WeChat Files		-- 文件管理目录
├─All Users		-- 公共配置目录
│ └─config		-- 配置文件目录
│ c9d52eb5.ini		-- 不知
│ config.data		-- 设置免扫码配置
...
...
└─wxid_*		-- 用户微信目录,每个微信会自动生成一个目录,目录名为初始微信账号。
图片[2]-微信多开实现免扫码登录-枫落墨痕
文件管理目录

文件分析

全局配置

全局配置是微信自有配置且不可自定义。

首先我们打开%USERPROFILE%\Documents\WeChat Files 目前的ini文件,看看里面有些什么?

图片[3]-微信多开实现免扫码登录-枫落墨痕
微信配置文件

由上面可以看出,有一个配置文件中,只有一个路径,我们通过设置对比可以看出,这个就是微信文件管理目录的一部分,只是少了WeChat Files,所以,我们写一个实例,读取每一个ini文件内容,取第一行对方特征*:\(说明:由于这一个目录是可以自定义的,所以我们只能取特征)

图片[4]-微信多开实现免扫码登录-枫落墨痕
微信设置界面

用户配置

用户配置文件目录是存放用户聊天记录、接收文件、图片、视频的目录,通常我们如果说清理微信目录时,就是清理该目录下的文件(如果你对微信目录结构不熟悉,请使用专业工具清理或者微信自带的清理工具清理,具体如何清理则在下一篇技术文章中说明。)

图片[5]-微信多开实现免扫码登录-枫落墨痕
文件管理目录结构

如图所示,在这里我们需要利用到两个重要的目录All Users、wxid_***;All Users目录中的配置文件是对我们所有的微信号都生效的配置目录;以wxid_***开头的是微信号文件管理目录,而wxid_***是我们每个微信的初始微信ID号,我们接着往下看,首先看看All Users目录下有些什么?

如图所示,我们可以看到根目录中有很多重复的图片,只是文件名不一样,这是因为权限发生了改变需要重新扫码登录时,登录的头像就会在这个目录中生成一个缓存,所以我们无需要管这些,我们接着看config目录下的内容;图中所示有一个config.data(下文称免扫码文件)、***.ini两个文件,其中***.ini文件名随机生成,对于我们作用不大,我们主要看免扫码文件文件,我们使用文本文件打开,这里我使用扫码登录和自动登录做了一个对比,从这里可以看出,自动登录是在文本中的固定位置插入了一个微信号目录中的一个AccInfo.dat(账号信息)文件,这里包含了微信号以及微信头像信息,其它信息已加密。

实现免扫码

© 版权声明
THE END
喜欢就支持一下吧
点赞27 分享