[+] 通用微信多开工具的集成

This commit is contained in:
huiyadanli 2020-01-05 01:47:15 +08:00
parent 349e9bf18e
commit 05191db39e
6 changed files with 120 additions and 57 deletions

View File

@ -37,13 +37,13 @@
this.lblProcNum = new System.Windows.Forms.Label();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.textBox1 = new System.Windows.Forms.TextBox();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.lblHowToUse = new System.Windows.Forms.LinkLabel();
this.tabPage3 = new System.Windows.Forms.TabPage();
this.label1 = new System.Windows.Forms.Label();
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
this.label3 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.lblHowToUse = new System.Windows.Forms.LinkLabel();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.tabPage2.SuspendLayout();
@ -52,7 +52,7 @@
//
// btnStartTimer
//
this.btnStartTimer.Location = new System.Drawing.Point(158, 46);
this.btnStartTimer.Location = new System.Drawing.Point(170, 46);
this.btnStartTimer.Name = "btnStartTimer";
this.btnStartTimer.Size = new System.Drawing.Size(91, 23);
this.btnStartTimer.TabIndex = 99;
@ -88,7 +88,7 @@
// btnStopTimer
//
this.btnStopTimer.Enabled = false;
this.btnStopTimer.Location = new System.Drawing.Point(158, 75);
this.btnStopTimer.Location = new System.Drawing.Point(170, 75);
this.btnStopTimer.Name = "btnStopTimer";
this.btnStopTimer.Size = new System.Drawing.Size(91, 23);
this.btnStopTimer.TabIndex = 98;
@ -99,7 +99,7 @@
// lblProcNum
//
this.lblProcNum.AutoSize = true;
this.lblProcNum.Location = new System.Drawing.Point(158, 23);
this.lblProcNum.Location = new System.Drawing.Point(170, 23);
this.lblProcNum.Name = "lblProcNum";
this.lblProcNum.Size = new System.Drawing.Size(95, 12);
this.lblProcNum.TabIndex = 20;
@ -114,7 +114,7 @@
this.tabControl1.Location = new System.Drawing.Point(0, 0);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(271, 146);
this.tabControl1.Size = new System.Drawing.Size(286, 146);
this.tabControl1.TabIndex = 21;
//
// tabPage1
@ -126,11 +126,22 @@
this.tabPage1.Location = new System.Drawing.Point(4, 22);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(263, 120);
this.tabPage1.Size = new System.Drawing.Size(278, 120);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "自动模式";
this.tabPage1.UseVisualStyleBackColor = true;
//
// textBox1
//
this.textBox1.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.textBox1.Location = new System.Drawing.Point(7, 14);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.ReadOnly = true;
this.textBox1.Size = new System.Drawing.Size(157, 92);
this.textBox1.TabIndex = 22;
this.textBox1.Text = "1.使用方法:点击【启动多开】之后,就可以启动多个微信了。\r\n2.注意:启动多个微信频率太快时,可能会失败。";
//
// tabPage2
//
this.tabPage2.Controls.Add(this.lblHowToUse);
@ -144,6 +155,17 @@
this.tabPage2.Text = "手动功能";
this.tabPage2.UseVisualStyleBackColor = true;
//
// lblHowToUse
//
this.lblHowToUse.AutoSize = true;
this.lblHowToUse.Location = new System.Drawing.Point(96, 16);
this.lblHowToUse.Name = "lblHowToUse";
this.lblHowToUse.Size = new System.Drawing.Size(65, 12);
this.lblHowToUse.TabIndex = 19;
this.lblHowToUse.TabStop = true;
this.lblHowToUse.Text = "如何使用?";
this.lblHowToUse.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lblHowToUse_LinkClicked);
//
// tabPage3
//
this.tabPage3.Controls.Add(this.label1);
@ -157,6 +179,15 @@
this.tabPage3.Text = "关于";
this.tabPage3.UseVisualStyleBackColor = true;
//
// label1
//
this.label1.Location = new System.Drawing.Point(23, 14);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(221, 61);
this.label1.TabIndex = 17;
this.label1.Text = "本工具是\r\n【 PC版微信/QQ/TIM防撤回补丁】\r\n的额外产物\r\n更多信息可以在软件主页查看";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// linkLabel1
//
this.linkLabel1.AutoSize = true;
@ -176,42 +207,11 @@
this.label3.TabIndex = 15;
this.label3.Text = "软件主页(开源)";
//
// textBox1
//
this.textBox1.BackColor = System.Drawing.SystemColors.ControlLightLight;
this.textBox1.Location = new System.Drawing.Point(7, 14);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.ReadOnly = true;
this.textBox1.Size = new System.Drawing.Size(144, 92);
this.textBox1.TabIndex = 22;
this.textBox1.Text = "1.使用方法:点击【启动多开】之后,就可以启动多个微信了。\r\n2.注意:启动多个微信频率太快时,可能会失败。";
//
// label1
//
this.label1.Location = new System.Drawing.Point(23, 14);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(221, 61);
this.label1.TabIndex = 17;
this.label1.Text = "本工具是\r\n【 PC版微信/QQ/TIM防撤回补丁】\r\n的额外产物\r\n更多信息可以在软件主页查看";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// lblHowToUse
//
this.lblHowToUse.AutoSize = true;
this.lblHowToUse.Location = new System.Drawing.Point(96, 16);
this.lblHowToUse.Name = "lblHowToUse";
this.lblHowToUse.Size = new System.Drawing.Size(65, 12);
this.lblHowToUse.TabIndex = 19;
this.lblHowToUse.TabStop = true;
this.lblHowToUse.Text = "如何使用?";
this.lblHowToUse.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lblHowToUse_LinkClicked);
//
// FormMultiInstance
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(271, 146);
this.ClientSize = new System.Drawing.Size(286, 146);
this.Controls.Add(this.tabControl1);
this.MaximizeBox = false;
this.Name = "FormMultiInstance";

View File

@ -10,6 +10,14 @@ namespace RevokeMsgPatcher.MultiInstance
public FormMultiInstance()
{
InitializeComponent();
// 标题加上版本号
string currentVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
if (currentVersion.Length > 3)
{
currentVersion = " v" + currentVersion.Substring(0, 3);
}
this.Text += currentVersion;
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
@ -106,7 +114,7 @@ namespace RevokeMsgPatcher.MultiInstance
private void lblHowToUse_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/tree/master/RevokeMsgPatcher.MultiInstance");
}
private void FormMultiInstance_FormClosed(object sender, FormClosedEventArgs e)

View File

@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyVersion("0.1")]
[assembly: AssemblyFileVersion("0.1")]

View File

@ -0,0 +1,24 @@
## 一个通用的微信多开工具
此工具可以无视微信版本进行多开。
**如果你曾使用过“PC版微信/QQ/TIM防撤回补丁”并对微信安装了防撤回/多开的补丁,此时微信本身已经支持多开,请勿重复使用本工具!!!**
## 🔨使用方法
自动模式(一般用户使用这个模式即可):
点击【启动多开】之后,就可以启动多个微信了。
注意:启动多个微信频率太快时,可能会失败。
手动模式:
关闭所有微信进程:功能就是关闭所有微信进程,微信在某种启动失败的情况下会残留进程(无界面),一般不会遇到这种情况。
清理所有微信互斥句柄:功能就是把所有微信判断是否多开的标志全部清理掉,实现多开。如果只使用这个按钮实现多开的话,每次开启一个微信之后都要点一下这个按钮。
## 📄License
GPLv3
![](https://raw.githubusercontent.com/huiyadanli/RevokeMsgPatcher/master/Images/give_a_star.png)

View File

@ -56,6 +56,7 @@
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
@ -232,17 +233,18 @@
//
this.ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.ToolStripMenuItem,
this.ToolStripMenuItem});
this.ToolStripMenuItem,
this.ToolStripMenuItem});
this.ToolStripMenuItem.Name = "高级ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.ToolStripMenuItem.Text = "高级";
this.ToolStripMenuItem.Visible = false;
//
// 特征码防撤回强制ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "特征码防撤回强制ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
this.ToolStripMenuItem.Text = "特征码防撤回(强制)";
this.ToolStripMenuItem.Visible = false;
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 手动输入补丁信息ToolStripMenuItem
@ -250,6 +252,7 @@
this.ToolStripMenuItem.Name = "手动输入补丁信息ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
this.ToolStripMenuItem.Text = "手动输入补丁信息";
this.ToolStripMenuItem.Visible = false;
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 帮助ToolStripMenuItem
@ -266,28 +269,28 @@
// 支持版本ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "支持版本ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.ToolStripMenuItem.Text = "支持版本";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 常见问题ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "常见问题ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.ToolStripMenuItem.Text = "常见问题";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 防撤回原理ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "防撤回原理ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.ToolStripMenuItem.Text = "防撤回原理";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 完整文档ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "完整文档ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.ToolStripMenuItem.Text = "完整文档";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
@ -303,17 +306,24 @@
// 作者ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "作者ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.ToolStripMenuItem.Text = "关于";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 主页ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "主页ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.ToolStripMenuItem.Text = "软件主页";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 通用微信多开工具ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "通用微信多开工具ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
this.ToolStripMenuItem.Text = "通用微信多开工具";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// FormMain
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
@ -377,6 +387,7 @@
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
}
}

View File

@ -2,6 +2,7 @@
using RevokeMsgPatcher.Modifier;
using RevokeMsgPatcher.Utils;
using System;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Web.Script.Serialization;
@ -274,7 +275,7 @@ namespace RevokeMsgPatcher
DialogResult dr = MessageBox.Show(tips, "当前支持防撤回的版本", MessageBoxButtons.OKCancel);
if (dr == DialogResult.OK && needUpdate)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/releases");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/releases");
}
}
@ -352,27 +353,27 @@ namespace RevokeMsgPatcher
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki/%E7%89%88%E6%9C%AC%E6%94%AF%E6%8C%81");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki/%E7%89%88%E6%9C%AC%E6%94%AF%E6%8C%81");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki#%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki#%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki#%E5%8E%9F%E7%90%86");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki#%E5%8E%9F%E7%90%86");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki");
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/wiki");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
@ -384,5 +385,24 @@ namespace RevokeMsgPatcher
{
MessageBox.Show("作者正在考虑是否要加上这个功能,该功能可能有安全风险,暂时不加入", "手动输入补丁信息");
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
string path = Path.Combine(Application.StartupPath, "RevokeMsgPatcher.MultiInstance.exe");
if (File.Exists(path))
{
Process p = new Process();
p.StartInfo.FileName = path;
p.Start();
}
else
{
DialogResult dr = MessageBox.Show($"未在同级目录下找到“微信通用多开工具”,位置:{path},点击“确定”访问微信通用多开工具的主页,你可以在主页上下载到这个工具。", "未找到程序", MessageBoxButtons.OKCancel);
if (dr == DialogResult.OK)
{
Process.Start("https://github.com/huiyadanli/RevokeMsgPatcher/tree/master/RevokeMsgPatcher.MultiInstance");
}
}
}
}
}