2020電腦微信多開超強防封號 電腦多開微信怎么操作

電腦多開微信怎么操作(2020電腦微信多開超強防封號)
微信電腦端也能多開昨天 , 偶然從好朋友小林處得知 , 他的電腦居然可以同時上兩個微信號 。
手機端多開微信我知道 , 像華為、小米等手機系統都對此做了支持 , 不過在運行Windows系統的電腦上怎么啟動兩個微信呢 , 這倒是一下引起了我的好奇 。
小林告訴我他是這樣做的 , 寫了一個批處理:
start D:\WeChat\WeChat.exe start D:\WeChat\WeChat.exe然后直接雙擊批處理文件 , 就能啟動兩個微信進程 。
我試了一下 , 果然如此!
隨后我又加了一行 , 竟然還能啟動3個:

2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

接著我在網絡上搜了一下 , 原來這一招早就被人用過了 , 看來是我火星了 。 不過到底為什么用這種方式就能多開 , 我倒是很想直到這個迷底 。
TIPS:如果對技術分析部分不感興趣 , 可以跳過直接來到后面的真相部分 。
微信的單例模式正常情況下 , 直接手動雙擊微信圖標啟動 , 后面啟動的進程會進行全局單例模式檢查 , 如果發現已經存在微信進程 , 就會直接把對應進程的微信窗口激活 , 定位到桌面最前面 , 隨后自己退出 。
但為什么用上面的方式就能啟動倆呢?我們來一探究竟 。
首先 , 分析一下上面描述的微信單個實例是如何實現的 。
做過Windows平臺應用程序開發的朋友可能對此比較熟悉 , 一般是進程啟動后創建一個全局唯一名字的互斥體 , 創建成功則正常啟動 , 創建失敗則判斷一下是否這個互斥體已經存在 。 如果已經存在則說明已經有對應程序之前啟動 。
帶著這種猜想 , 用工具procexp查看一下微信進程打開的所有內核對象 , 并找到互斥體部分:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

果然 , 這其中有一個名字叫_WeChat_App_Instance_Identity_Mutex_Name的互斥體 , 從這個名字可以猜出 , 這個跟微信的單例模式絕對有關系 。
接著 , 啟動神器APIMonitor , 它可以幫你監控指定進程的API調用情況 , 勾選上CreateMutex和GetLastError這兩個Windows API函數 。 在已經有微信在運行的情況下 , 用這個工具再啟動一個微信進程 , 看一下函數調用情況:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

可以看到 , 創建這個名字的互斥體后 , 隨后又調用了GetLastError函數 , 并返回了0x000000b7 , 查看手冊 , 其含義:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

表示已經存在 。
來看一下 , 這個CreateMutex調用的堆棧 , 看看是哪個地方的代碼在創建這個全局互斥體:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

從堆??闯?, 調用來自于微信目錄下的一個動態庫WeChatWin.dll 。 具體位置在偏移0x8e271b處的前一條指令 。
接下來就要祭出神器中的神器 , 大名鼎鼎的反匯編軟件IDA , 這家伙支持x86、x64、ARM、MIPS等多種處理器架構和Windows、Linux、Android、MacOS、JVM等多種系統平臺的程序分析 。
用IDA打開這個WeChatWin.dll文件 , 并定位到偏移0x8e271b處:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

如上圖所示 , 創建互斥體的動作 , 發生在函數sub_108e26d0 。
上層是sub_108e2660函數在調用它:
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

上面這張圖反映了創建互斥體后的判斷邏輯:
    如果sub_108e26d0的返回值為0 , 表示沒有錯誤 , 當前函數也直接返回0 。
    如果sub_108e26d0的返回值不為0 , 表示出現了錯誤 , 則依次判斷 WeChatMainWndForPC和 WeChatLoginWndForPC兩個窗口是否存在 , 如果存在則使用 BringWindowToTop函數將其置頂彈出 。 這兩個窗口分別代表的是微信的主界面窗口和登陸界面窗口 , 如果一個微信實例已經存在 , 則勢必處于這兩種狀態之一 。
問題就出在上面這個判斷中 , 匯編代碼看起來有點辣眼睛 , 咱們F5來還原一下C代碼(還原效果只能湊合看 , 能看清楚邏輯就行):
2020電腦微信多開超強防封號 電腦多開微信怎么操作

文章插圖

上面圖片的注解已經說明了 , 函數sub_108e2660的返回值將決定是否啟動微信實例進程 , 還是直接退出 。

推薦閱讀