.版本 2
.支持库 shell
.支持库 spec
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
.局部变量 微信进程PID, 整数型
未闻花名_皮肤加载 (3, _启动窗口.取窗口句柄 (), 真, 真, 5, , , , )
.如果真 (进程_是否存在 (“WeChat.exe”, 假) = 真)
微信进程PID = 进程_名取ID (“WeChat.exe”, 假)
进程_结束 (微信进程PID)
.如果真结束
.子程序 进程_名取ID, 整数型, 公开, 通过进程名取进程ID,失败返回0。
.参数 进程名, 文本型, , 取要进程ID的进程名
.参数 是否区分大小写, 逻辑型, 可空, 默认为不区分,真=区分
.局部变量 局_进程信息, PROCESSENTRY32
.局部变量 进程快照, 整数型
.局部变量 下一个, 整数型
进程快照 = CreateToolhelp32Snapshot (2, 0)
.如果真 (进程快照 = 0)
返回 (0)
.如果真结束
局_进程信息.dwSize = 296
下一个 = Process32First (进程快照, 局_进程信息)
.判断循环首 (下一个 ≠ 0)
.如果真 (文本比较 (到文本 (局_进程信息.szExeFile), 进程名, 是否区分大小写) = 0)
CloseHandle (进程快照)
返回 (局_进程信息.th32ProcessID)
.如果真结束
下一个 = Process32Next (进程快照, 局_进程信息)
.判断循环尾 ()
CloseHandle (进程快照)
返回 (0)
.子程序 进程_结束, 逻辑型, 公开, 结束指定进程。成功返回真,失败返回假
.参数 进程ID, 整数型, 可空, 欲结束的进程ID,如果为空将结束自己
.如果真 (是否为空 (进程ID))
进程ID = 进程_取自进程ID ()
.如果真结束
返回 (TerminateProcess (OpenProcess (1, 假, 进程ID), 0) = 1)
.子程序 进程_取自进程ID, 整数型, 公开, 取自身的进程ID,成功返回进程ID;失败返回0。
返回 (GetCurrentProcessId ())
.子程序 进程_是否存在, 逻辑型, 公开, 判断指定进程是否存在(此判断与进程其它信息无关联)(存在返回真,不存在或失败返回假)
.参数 进程名, 文本型, , 欲检测的进程名
.参数 是否区分大小写, 逻辑型, 可空, 默认为不区分,真=区分
.局部变量 信息, PROCESSENTRY32
.局部变量 进程快照, 整数型
.局部变量 进程句柄, 整数型
进程快照 = CreateToolhelp32Snapshot (15, 0)
.如果真 (进程快照 = 0)
返回 (假)
.如果真结束
信息.dwSize = 1024
进程句柄 = Process32First (进程快照, 信息)
.判断开始 (是否区分大小写)
.判断循环首 (进程句柄 ≠ 0)
.判断开始 (进程名 = 到文本 (信息.szExeFile))
CloseHandle (进程快照)
返回 (真)
.默认
进程句柄 = Process32Next (进程快照, 信息)
.判断结束
.判断循环尾 ()
.默认
进程名 = 到小写 (进程名)
.判断循环首 (进程句柄 ≠ 0)
.判断开始 (进程名 = 到小写 (到文本 (信息.szExeFile)))
CloseHandle (进程快照)
返回 (真)
.默认
进程句柄 = Process32Next (进程快照, 信息)
.判断结束
.判断循环尾 ()
.判断结束
CloseHandle (进程快照)
返回 (假)
.子程序 _按钮_浏览目录_被单击
编辑框_微信路径.内容 = 浏览文件夹 (“浏览微信目录”, )
.子程序 _按钮_运行_被单击
.局部变量 脚本, 文本型
.局部变量 i, 整数型
脚本 = “@echo off” + #换行符
.如果 (编辑框_微信路径.内容 ≠ “”)
.如果 (文本_是否为数字 (编辑框_运行数量.内容) = 真)
.如果 (到整数 (编辑框_运行数量.内容) ≤ 7)
.计次循环首 (到整数 (编辑框_运行数量.内容), i)
脚本 = 脚本 + “start /d” + #引号 + 编辑框_微信路径.内容 + #引号 + “ WeChat .exe” + #换行符
.计次循环尾 ()
脚本 = 脚本 + “exit ”
调试输出 (脚本)
写到文件 (“C:\WeChat.bat”, 到字节集 (脚本))
运行 (“C:\WeChat.bat”, 假, 1)
.否则
信息框 (“微信最大运行数量:7 !”, 0, , )
返回 ()
.如果结束
.否则
.如果结束
.否则
信息框 (“路径不能为空!”, 0, , )
返回 ()
.如果结束
.子程序 文本_是否为数字, 逻辑型, 公开, 中间不能有空格,判断指定文本是否是数字
.参数 参_文本, 文本型
.局部变量 i, 整数型
.局部变量 Len, 整数型
.局部变量 asc, 整数型
Len = 取文本长度 (参_文本)
.如果真 (Len = 0)
返回 (假)
.如果真结束
.计次循环首 (Len, i)
asc = 取代码 (参_文本, i)
.判断开始 (asc < 48) ' a=97
返回 (假)
.判断 (asc > 57) ' z=122
返回 (假)
.默认
.判断结束
.计次循环尾 ()
返回 (真)
.子程序 __启动窗口_将被销毁
删除文件 (“C:\WeChat.bat”)