python分析实现微信钉钉等软件多开分身

 更新时间:2022年02月17日 15:30:09   作者:落伍的码农  
我发现坛友分享的很多都是通过cmd 去start 多个微信,虽然能实现多开,但不够灵活,比如我上午登录了一个微信,下午在登录就不太好用了,当然也可能是我start的姿势不对。于是我就搜了下单实例原理,自己动手实现了个随用随开的

目前很多软件都限制单实例,大多数软件都是用Mutex来实现的 而这个东西咱们可以用handle去干掉它,并且不影响使用。 钉钉也是一样的步骤 不过Mutex的名字不一样 我测试的钉钉的是:

”\Sessions\1\BaseNamedObjects\{{239B7D43-86D5-4E5C-ADE6-CEC42155B475}}DingTalk“

这里要借助微软的两个软件 分别是:procexp handle

接下来开始正文:

首先咱们要手动判断下Mutex是哪个。

这就要用到procexp.exe了 以管理员身份运行该程序。

选中微信进程 按Ctrl+L 就会出现图中下半部分。

在软件中我们可以找type 是Mutant 的 然后右键有个关闭 一个一个试 这里我已经试过了就不演示了 直接给大家

name \Sessions\1\BaseNamedObjects\WeChat_GlobalConfig_Multi_Process_Mutex

到这一步之后 这个工具的使命就完成了!接下来该使用handle了 在cmd 输入下面的代码

handle -a -u -p 12668 "\Sessions\1\BaseNamedObjects\WeChat_GlobalConfig_Multi_Process_Mutex"

然后我们在去关闭下这个句柄就可以了

handle -p 12668 -c 460 -y

注意:这句代码需要管理员权限

然后我们再去打开微信就可以了。

下面我们用python去实现下

代码可能和分析不太一样 因为

"\Sessions\1\BaseNamedObjects\WeChat_GlobalConfig_Multi_Process_Mutex"

中的1 有时候会变成其他数字,所以我用了匹配规则

把代码和handle.exe 放在一个目录下

import os
import re
import psutil
 
 
def get_pid(name):
    """
    获取所有的微信进程
    """
    process_list = psutil.pids()
    pids = []
    for pid in process_list:
        if psutil.Process(pid).name() == name:
            pids.append(pid)
    return pids
 
 
def more_open(path):
    pids = get_pid("WeChat.exe") 
    for pid in pids:
        #遍历所有微信的pid 把 Mutex都干掉
        cmd = f"handle -a -u -p {pid}"
        with os.popen(cmd) as f:
            result = f.read()
        search_result = ""
        for i in result.split("\n"):
            if i.strip():
                if i.strip().endswith("_WeChat_App_Instance_Identity_Mutex_Name"):
                    search_result += i
        if not search_result:
            os.startfile(path)
            continue
        re_result = re.findall('(\d+): Mutant', search_result, re.S)
        #上面这个循环是匹配 Mutex的handle
        if re_result:
            for _id in re_result:
                os.system(f'handle -p {pid} -c {_id} -y')
            os.startfile(path)
 
path = "D:\Program Files (x86)\Tencent\WeChat\WeChat.exe"
more_open(path)

到此这篇关于python分析实现微信钉钉等软件小号多开的文章就介绍到这了,更多相关python 微信多开内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python实现循环语句1到100累和

    python实现循环语句1到100累和

    这篇文章主要介绍了python循环语句1到100累和方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Python实现常见数据格式转换的方法详解

    Python实现常见数据格式转换的方法详解

    这篇文章主要为大家详细介绍了Python实现常见数据格式转换的方法,主要是xml_to_csv和csv_to_tfrecord,感兴趣的小伙伴可以了解一下
    2022-09-09
  • YOLOv5车牌识别实战教程(三)模型训练与评估

    YOLOv5车牌识别实战教程(三)模型训练与评估

    这篇文章主要介绍了YOLOv5车牌识别实战教程(三)模型训练与评估,在这个教程中,我们将一步步教你如何使用YOLOv5进行车牌识别,帮助你快速掌握YOLOv5车牌识别技能,需要的朋友可以参考下
    2023-04-04
  • python将字典内容存入mysql实例代码

    python将字典内容存入mysql实例代码

    这篇文章主要介绍了python将字典内容存入mysql实例代码,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python对象与json数据的转换问题实例详解

    Python对象与json数据的转换问题实例详解

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,很受广大用户喜爱,今天通过本文给大家介绍Python对象与json数据的转换问题,需要的朋友可以参考下
    2022-07-07
  • python实现AES算法及AES-CFB8加解密源码

    python实现AES算法及AES-CFB8加解密源码

    这篇文章主要为大家介绍了python实现AES算法及AES-CFB8加解密的源码示例,有需要朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02
  • scrapy爬虫完整实例

    scrapy爬虫完整实例

    这篇文章主要介绍了scrapy爬虫完整实例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • python循环监控远程端口的方法

    python循环监控远程端口的方法

    这篇文章主要介绍了python循环监控远程端口的方法,涉及Python实现端口监控的技巧,需要的朋友可以参考下
    2015-03-03
  • Python for循环及基础用法详解

    Python for循环及基础用法详解

    这篇文章为大家介绍python for 循环,它常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素
    2019-11-11
  • PyCharm 2020 激活到 2100 年的教程

    PyCharm 2020 激活到 2100 年的教程

    这篇文章主要介绍了PyCharm 2020 激活到 2100 年,本文图文并茂给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03

最新评论