Python   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了用python实现微信、钉钉等软件多开大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我发现坛友分享的很多都是通过cmd 去start 多个微信
然能实现多开,但不够灵活,比如我上午登录了一个微信,下午在登录就不太好用了
当然也可能是我start的姿势不对。于是我就搜了下单实例原理,自己动手实现了个随用随开的。目前很多软件都限制单实例,大多数软件都是用Mutex来实现的
而这个东西咱们可以用handle去干掉它,并且不影响使用。
钉钉也是一样的步骤 不过Mutex的名字不一样
我测试的钉钉的是:

”\Sessions\1\Bas@R_673_8371@dObjects\{{239B7D43-86D5-4E5C-ADE6-CEC42155B475}}DingTalk“

干货主要有:

① 200 多本 Python 电子书(和经典的书籍)应该有

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且可靠的练手项目及源码)

④ Python基础入门、爬虫、网络开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

Python学习Q群101677771

 


这里要借助微软的两个软件 分别是:procexp handle
接下来开始正文:
首先咱们要手动判断下Mutex是哪个。
这就要用到procexp.exe了 以管理员身份运行该程序。
选中微信进程 按Ctrl+L 就会出现图中下半部分。

用python实现微信、钉钉等软件多开

 

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

name
\Sessions\1\Bas@R_673_8371@dObjects\WeChat_GlobalConfig_Multi_Process_Mutex


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

handle -a -u -p 12668 "\Sessions\1\Bas@R_673_8371@dObjects\WeChat_GlobalConfig_Multi_Process_Mutex"

 

用python实现微信、钉钉等软件多开

 

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

handle -p 12668 -c 460 -y

注意:这句代码需要管理员权限
然后我们再去打开微信就可以了。
下面我们用python去实现下
代码可能和分析不太一样 因为

"\Sessions\1\Bas@R_673_8371@dObjects\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 @H_666_114@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实现微信、钉钉等软件多开所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: