2020.1.15補:藍奏雲顯示源碼下載140次,編譯好的軟件下載150次,我自己刷了800多個點擊量,今天一看居然有8000多個訪問,這可不是我刷的呀,
補::
通過這篇文章,我發現CSDN有bug,這一千個點擊,起碼有800個是我自己整出來的,甚至更多,那是不是說,我想上第一也就是輕敲鍵盤嘞?
配置:
- 電腦
- PyCharm
- Python3.7.4
- tkinter
- pyinstall
- WeChatSDK.dll
- 1.ico
打包好的軟件:https://www.lanzous.com/i6bsc8f
源碼:https://www.lanzous.com/i6bsidg
運行截圖:
# -*- coding: utf-8 -*-
import ctypes, time, signal, psutil, os
import tkinter as tk
RECVTEXTMSG_CALLBACK = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.c_int, ctypes.c_wchar_p, ctypes.c_wchar_p)
RECVPAYMSG_CALLBACK = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.c_int, ctypes.c_wchar_p, ctypes.c_wchar_p, ctypes.c_wchar_p)
# 初始化SDK
class WXSDK():
# 引入動態鏈接庫
def __init__(self):
self.sdk = ctypes.CDLL("WeChatSDK.dll")
# 初始化接口
def WXOpenWechat(self):
self.pid = self.sdk.WXOpenWechat()
# 多開模塊
def Open(num):
wxsdk = WXSDK()
for x in range(0,num):
try:
pid = wxsdk.WXOpenWechat()
# 判斷是否打開成功如果PID爲空則死循環(可能會死循環)
while(pid == 0):
pid = wxsdk.WXOpenWechat()
time.sleep(0.5)
time.sleep(0.8)
except:
pass
# 結束進程模塊
def kill():
# 定義PID字典
pid_dict = {}
# 獲取所有PID
pids = psutil.pids()
for pid in pids:
p = psutil.Process(pid)
pid_dict[pid]=p.name()
for t in pid_dict.keys():
if pid_dict[t] == "WeChat.exe":
try:
os.kill(t,signal.SIGABRT)
except:
while True:
try:
os.kill(t, signal.SIGABRT)
break
except:
continue
# 1.實例化object,建立窗口
window = tk.Tk()
# 2.給窗口可視化title
window.title("微信多開 2.0")
# 3.設置圖標
# window.iconbitmap('1.ico')
# 4.設置窗口大小(窗口居中)
sw = window.winfo_screenwidth()
sh = window.winfo_screenheight()
ww = 300
wh = 300
x = (sw - ww) / 2
y = (sh - wh) / 2
window.geometry("%dx%d+%d+%d" % (ww, wh, x, y))
#鎖定大小
window.maxsize(400, 200)
window.minsize(400, 200)
# 設置Label標籤
lab = tk.Label(window, text='多開幾個?', font=('', 14)).place(x=100, y=35)
# 設置text文本框標籤
text = tk.Entry(window, text="2", font=14, textvariable="text")
text.pack()
# 改變text文本框位置
text.place(x=200,y=33,width=50,height=30)
# 倆按鈕執行函數
def Open_Wechat():
# 給上面For循環的值,int型
Open(int(text.get()))
def Close_Windows():
kill()
# 倆按鈕並設置位置
open_wechat = tk.Button(window, text='立即多開', width=15, height=2, command=Open_Wechat).place(x=50, y=100)
window_close = tk.Button(window, text='關閉全部', width=15, height=2, command=Close_Windows).place(x=200, y=100)
# 循環顯示窗口
tk.mainloop()