开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1336|回复: 22
收起左侧

[易语言纯源码] 分享一个简单化的VX双开代码

[复制链接]
结帖率:0% (0/1)
发表于 2025-8-1 14:22:29 | 显示全部楼层 |阅读模式   广东省揭阳市
分享源码
界面截图: -
是否带模块: 纯源码
备注说明: -
只用于学习
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
VX路径文本型  
互斥体名称文本型2 
ico图标字节集  
窗口信息记录型  
VX进程列表整数型0"  ' 存储VX进程ID 
启动延迟整数型  ' 启动延迟时间(毫秒)  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
' 窗口基本设置
启动窗口.左边 (屏幕宽度 - 启动窗口.宽度) ÷ 2
启动窗口.顶边 (屏幕高度 - 启动窗口.高度) ÷ 2
启动窗口.标题 = “VX多开器 - 可视化版”
启动窗口.边框 = #无边框
启动窗口.背景颜色 = #F0F0F0  ' 更现代的浅**

' 初始化组件
编辑框1.内容 = 读配置项 (取运行目录 ()“\config.ini”, “设置”, “多开数量”, “2”)  ' 读取上次设置
编辑框1.密码输入 = 假
编辑框1.边框样式 = #边框样式_细边框
编辑框1.文本颜色 = #000000
编辑框1.背景颜色 = #FFFFFF

按钮1.标题 = “启动多开”
按钮1.背景颜色 = #00B42A  ' 更鲜艳的绿色
按钮1.文本颜色 = #FFFFFF
按钮1.字体.加粗 = 真

按钮2.标题 = “最小化”
按钮2.背景颜色 = #FF7D00  ' 橙色
按钮2.文本颜色 = #FFFFFF
按钮2.字体.加粗 = 真

按钮3.标题 = “退出”
按钮3.背景颜色 = #F53F3F  ' 更鲜艳的红色
按钮3.文本颜色 = #FFFFFF
按钮3.字体.加粗 = 真

按钮4.标题 = “关闭所有VX”
按钮4.背景颜色 = #722ED1  ' 紫色
按钮4.文本颜色 = #FFFFFF
按钮4.字体.加粗 = 真

按钮5.标题 = “刷新进程”
按钮5.背景颜色 = #1890FF  ' 蓝色
按钮5.文本颜色 = #FFFFFF
按钮5.字体.加粗 = 真

标签1.标题 = “多开数量:”
标签1.文本颜色 = #333333

标签2.标题 = “状态:就绪”
标签2.文本颜色 = #333333
标签2.背景颜色 = #FFFFFF
标签2.边框 = 真

标签3.标题 = “VX多开器 v1.0”
标签3.文本颜色 = #1E88E5
标签3.字体.加粗 = 真
标签3.字体.大小 = 12

进度条1.位置 = 0
进度条1.边框 = 真
进度条1.颜色 = #00B42A

' 添加日志显示框
编辑框2.内容 = “欢迎使用VX多开器!

编辑框2.多行 = 真
编辑框2.滚动条 = #纵向滚动条
编辑框2.只读 = 真
编辑框2.背景颜色 = #FFFFFF
编辑框2.边框 = 真

' 初始化互斥体名称
互斥体名称 [1]“Global\_WeChat_App_Instance_Identity_Mutex_Name”
互斥体名称 [2]“WeChat_App_Instance_Identity_Mutex_Name”

' 加载图标
ico图标 = #图标1
置窗口图标 (启动窗口.取窗口句柄 (), ico图标)

' 读取启动延迟配置
启动延迟 = 到整数 (读配置项 (取运行目录 ()“\config.ini”, “设置”, “启动延迟”, “1000”))

' 刷新VX进程列表
刷新VX进程列表 ()
子程序名返回值类型公开备 注
_按钮1_被单击  
.局部变量 数量, 整数型
.局部变量 i, 整数型
.局部变量 启动成功数, 整数型
.局部变量 延迟输入, 文本型

' 验证输入
如果真 (取文本长度 (编辑框1.内容) = 0)
信息框 (“请输入多开数量”, 0, “提示”)
返回 ()

数量 = 到整数 (编辑框1.内容)
如果真 (数量 < 1 数量 > 10)
信息框 (“请输入1-10之间的数量”, 0, “提示”)
编辑框1.内容 = “2”
返回 ()

' 获取启动延迟
延迟输入 = 输入框 (“请输入启动延迟时间(毫秒,默认为1000)”, “启动设置”, “1000”)
如果真 (延迟输入 = “”)
启动延迟 = 1000
如果真 (延迟输入 ≠ “”)
启动延迟 = 到整数 (延迟输入)
如果真 (启动延迟 < 500 启动延迟 > 5000)
启动延迟 = 1000
信息框 (“延迟时间范围为500-5000毫秒,已设为默认值1000毫秒”, 0, “提示”)


' 提升权限
如果真 (提升权限 ())
如果真 (信息框 (“需要管理员权限才能正常工作,是否继续?”, 1, “权限提示”)#取消按钮 )
返回 ()


' 获取VX路径
VX路径 = 获取VX安装路径 ()
如果真 (VX路径 = “”)
VX路径 = 浏览文件 (“请选择VX程序”, “VX程序|WeChat.exe|所有文件|*.*”, , )
如果真 (VX路径 = “” 取文本右边 (VX路径, 11)“WeChat.exe”)
信息框 (“未找到有效的VX程序”, 0, “错误”)
返回 ()


' 保存设置
写配置项 (取运行目录 ()“\config.ini”, “设置”, “多开数量”, 编辑框1.内容)
写配置项 (取运行目录 ()“\config.ini”, “设置”, “启动延迟”, 到文本 (启动延迟))

' 清空之前的进程列表
重定义数组 (VX进程列表, 假, 0)

' 开始多开
按钮1.禁止 = 真
进度条1.最大位置 = 数量
进度条1.位置 = 0
启动成功数 = 0
标签2.标题 = “正在启动第1个VX...”
编辑框2.加入文本 (“===== 开始多开操作 =====
)
编辑框2.加入文本 (“多开数量: ”到文本 (数量)
)
编辑框2.加入文本 (“启动延迟: ”到文本 (启动延迟)“毫秒
)

计次循环首 (数量, i)
' 关闭互斥体
计次循环首 (2, )
关闭VX互斥体 (互斥体名称 [循环变量2])
计次循环尾 ()

' 启动VX
编辑框2.加入文本 (“正在启动第”到文本 (i)“个VX实例...
)
如果真 (启动VX ())
启动成功数 = 启动成功数 + 1
编辑框2.加入文本 (“成功启动第”到文本 (i)“个VX实例
)

' 更新界面
进度条1.位置 = i
标签2.标题 = “正在启动第”到文本 (i + 1)“个VX...”
处理事件 ()
延迟 (启动延迟)
计次循环尾 ()

' 完成提示
标签2.标题 = “启动完成:成功”到文本 (启动成功数)“个/共”到文本 (数量)“个”
编辑框2.加入文本 (“===== 多开操作完成 =====
)
编辑框2.加入文本 (“成功启动: ”到文本 (启动成功数)“个
)
编辑框2.加入文本 (“失败数量: ”到文本 (数量 - 启动成功数)“个
)
按钮1.禁止 = 假
信息框 (“操作完成,成功启动”到文本 (启动成功数)“个VX实例”, 0, “提示”)
子程序名返回值类型公开备 注
_按钮2_被单击  
' 最小化窗口
启动窗口.最小化 ()
子程序名返回值类型公开备 注
_按钮3_被单击  
' 保存设置
写配置项 (取运行目录 ()“\config.ini”, “设置”, “多开数量”, 编辑框1.内容)
结束 ()
子程序名返回值类型公开备 注
提升权限逻辑型 
.局部变量 hToken, 整数型
.局部变量 tkp, TOKEN_PRIVILEGES
.局部变量 结果, 逻辑型

结果 = 假
tkp.PrivilegeCount = 1
如果真 (OpenProcessToken (GetCurrentProcess (), 位或 ( #TOKEN_QUERY, #TOKEN_ADJUST_PRIVILEGES ), hToken))
如果真 (LookupPrivilegeValue (, #SE_DEBUG_NAME, tkp.Privileges [1].Luid))
tkp.Privileges [1].Attributes = #SE_PRIVILEGE_ENABLED
结果 = AdjustTokenPrivileges (hToken, 假, tkp, 24, 0, 0)
CloseHandle (hToken)
返回 (结果)
子程序名返回值类型公开备 注
关闭VX互斥体逻辑型 
DLL命令名返回值类型公开备 注
(暂未填写DLL命令名)   
DLL库文件名:
(未填写库文件名)
在DLL库中对应命令名:
(未填写命令名)
参数名类 型传址数组备 注
互斥体名称文本型
.局部变量 hMutex, 整数型

.尝试
hMutex = OpenMutex ( #MAXIMUM_ALLOWED, 假, 互斥体名称)
如果真 (hMutex ≠ 0)
CloseHandle (hMutex)
返回 ()
.捕获
返回 ()
子程序名返回值类型公开备 注
获取VX安装路径文本型 
.局部变量 注册表项, 整数型
.局部变量 安装路径, 文本型
.局部变量 默认路径, 文本型, , "3"
.局部变量 i, 整数型

默认路径 [1]“C:\Program Files\Tencent\WeChat\WeChat.exe”
默认路径 [2]“C:\Program Files (x86)\Tencent\WeChat\WeChat.exe”
默认路径 [3]“D:\Program Files\Tencent\WeChat\WeChat.exe”

' 从注册表获取
如果真 (RegOpenKey ( #HKEY_CURRENT_USER, “Software\Tencent\WeChat”, 注册表项)#ERROR_SUCCESS )
RegQueryValueEx (注册表项, “InstallPath”, 安装路径)
RegCloseKey (注册表项)
如果真 (文件是否存在 (安装路径 + “\WeChat.exe”))
返回 (安装路径 + “\WeChat.exe”)


' 检查默认路径
计次循环首 (3, i)
如果真 (文件是否存在 (默认路径 [i]))
返回 (默认路径 [i])

计次循环尾 ()

返回 (“”)
子程序名返回值类型公开备 注
启动VX逻辑型 
.局部变量 进程ID, 整数型
.局部变量 命令行, 文本型

.尝试
' 构建命令行参数,添加独立实例参数
命令行 = VX路径 + “ /AUTO”  ' /AUTO参数可以让VX自动登录

' 尝试使用运行命令启动
进程ID = 运行 (命令行, 假, #SW_SHOWNORMAL )

如果真 (进程ID = 0)
' 如果运行命令失败,尝试使用ShellExecute
进程ID = ShellExecute (0, “open”, VX路径, “/AUTO”, , #SW_SHOWNORMAL )
如果真 (进程ID > 32)
' 记录成功启动的进程ID
加入成员 (VX进程列表, 进程ID)
返回 ()
返回 ()

' 记录成功启动的进程ID
加入成员 (VX进程列表, 进程ID)
返回 ()
.捕获
编辑框2.加入文本 (“启动VX时发生错误: ”取错误信息 ()
)
返回 ()

子程序名返回值类型公开备 注
_标签3_鼠标左键被单击  
打开指定网址 (https://weixin.qq.com/)  ' 点击标题打开VX官网
子程序名返回值类型公开备 注
关闭所有VX实例逻辑型 
.局部变量 进程列表, 进程信息, , "0"
.局部变量 i, 整数型
.局部变量 关闭成功数, 整数型

关闭成功数 = 0
编辑框2.加入文本 (“===== 开始关闭所有VX实例 =====
)

' 获取所有VX进程
进程列表 = 枚举进程 ()

计次循环首 (取数组成员数 (进程列表), i)
如果真 (取文本右边 (进程列表 [i].进程名称, 11)“WeChat.exe”)
如果真 (终止进程 (进程列表 [i].进程ID))
关闭成功数 = 关闭成功数 + 1
编辑框2.加入文本 (“成功关闭进程ID: ”到文本 (进程列表 [i].进程ID)
)


计次循环尾 ()



i支持库列表   支持库注释   
eAPI应用接口支持库
spec特殊功能支持库
shell操作系统界面功能支持库
commctrl(未知支持库)
bmpoper(未知支持库)

点评

AI写的直接CV啊 ¿   河北省保定市  发表于 2025-8-2 21:56
你看我这个简不简单 打开指定网址(“C:\Program Files (x86)\Tencent\WeChat\WeChat.exe”) 打开指定网址(“C:\Program Files (x86)\Tencent\WeChat\WeChat.exe”)   广西壮族自治区贵港市  发表于 2025-8-1 18:03

评分

参与人数 1好评 +1 收起 理由
多多帅吧 + 1 很赞同,谢谢!

查看全部评分


签到天数: 2 天

发表于 前天 09:15 | 显示全部楼层   浙江省温州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 9 天

发表于 3 天前 | 显示全部楼层   山东省青岛市
这码气开不学习啊,双开不卡就行呢,学习了哈。
回复 支持 反对

使用道具 举报

签到天数: 8 天

发表于 3 天前 | 显示全部楼层   浙江省宁波市
感谢分享,支持开源!!!
回复 支持 反对

使用道具 举报

结帖率:89% (8/9)

签到天数: 9 天

发表于 5 天前 | 显示全部楼层   四川省成都市
感谢分享,支持开源!!!
回复 支持 反对

使用道具 举报

签到天数: 8 天

发表于 5 天前 | 显示全部楼层   浙江省宁波市
感谢分享,支持开源!!!
回复 支持 反对

使用道具 举报

结帖率:96% (121/126)

签到天数: 7 天

发表于 5 天前 | 显示全部楼层   山东省青岛市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:92% (67/73)

签到天数: 5 天

发表于 5 天前 | 显示全部楼层   山东省青岛市
感谢发布原创作品,精易因你更精彩!6666666666666
回复 支持 反对

使用道具 举报

签到天数: 7 天

发表于 6 天前 | 显示全部楼层   广西壮族自治区南宁市

支持开源~!感谢分享
回复 支持 反对

使用道具 举报

结帖率:96% (415/434)

签到天数: 3 天

发表于 6 天前 | 显示全部楼层   内蒙古自治区乌海市
  感谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表