易语言判断进程数

打个比方有一个XX。EXE这是一个调用的主程序 怎么判断进程里有多个同样重复这个调用的主程序的XX。EXE的发程,当我按下按钮A结束这个重复的所有这个XX。EXE,然后从新打开一个。如果再按下按钮B,结束束这个重复的所有这个XX。EXE,再按下按钮C又结束前面这个EXE的进程!说简单点就是当我按下按妞必须把这个EXE所有进程关掉再重开,要不然有冲突!

第1个回答  2019-02-04
不知你在说什么
你看看你打的字
打开一个进程用
运行()
命令打开这个程序即可
结速所有同名进程可以调用
以下
子程序(例如:
结束所有进程
(“QQ.exe”)):
.版本
2
.子程序
结束所有进程
.参数
需结束进程名,
文本型,
,
进程名
.参数
区分大小写,
逻辑型,
可空,
默认不区分进程名大小写
.局部变量
ID数组,
,
,
"0"
.局部变量
x,
整数型
进程取ID数组
(ID数组,
需结束进程名,
区分大小写)
.计次循环首
(取数组成员数
(ID数组),
x)
进程结束
(ID数组
[x])
.计次循环尾
()
.子程序
进程取ID数组,
整数型,
公开,
取指定
进程名称
的所有进程的进程ID(返回进程ID数目,没有返回0)
.参数
进程ID数组,
整数型,
可空
数组,
存放进程ID
数组变量
.参数
进程名,
文本型,
,
程序进程名
.参数
区分大小写,
逻辑型,
可空,
默认不区分进程名大小写
.局部变量
信息,
s5yh5sgrty
.局部变量
进程快照,
整数型
.局部变量
进程句柄,
整数型
清除数组
(进程ID数组)
进程快照
=
_创建快照
(15,
0)
.如果真
(进程快照

0)
信息.dwSize
=
1024
进程句柄
=
_第一个
(进程快照,
信息)
.如果
(区分大小写)
.判断循环首
(进程句柄

0)
.如果真
(到文本
(信息.进程名称)
=
进程名)
加入成员
(进程ID数组,
信息.srgyvr)
.如果真结束
进程句柄
=
_下一个
(进程快照,
信息)
.判断循环尾
()
.否则
.判断循环首
(进程句柄

0)
.如果真
(到小写
(到文本
(信息.进程名称))
=
到小写
(进程名))
加入成员
(进程ID数组,
信息.srgyvr)
.如果真结束
进程句柄
=
_下一个
(进程快照,
信息)
.判断循环尾
()
.如果结束
.如果真结束
_关闭对象
(进程快照)
返回
(取数组成员数
(进程ID数组))
.子程序
进程结束,
逻辑型,
公开,
终止一个进程(成功返回真,失败返回假)
.参数
进程ID,
整数型,
,
欲结束的进程ID
.局部变量
进程句柄,
整数型
.局部变量
a,
逻辑型
进程句柄
=
_打开进程
(1,
0,
进程ID)
a
=
_终止进程
(进程句柄,
0)
=
1
_关闭对象
(进程句柄)
返回
(a)
.版本
2
.数据类型
s5yh5sgrty
.成员
dwSize,
整数型
.成员
cntUsage,
整数型
.成员
srgyvr,
整数型
.成员
th32DefaultHeapID,
整数型
.成员
syhhbr,
整数型
.成员
cntThreads,
整数型
.成员
th32ParentProcessID,
整数型
.成员
pcPriClassBase,
整数型
.成员
dwFlags,
整数型
.成员
进程名称,
字节型,
,
"256"
.版本
2
.DLL命令
_创建快照,
整数型,
,
"CreateToolhelp32Snapshot"
.参数
falg,
整数型
.参数
id,
整数型
.DLL命令
_关闭对象,
整数型,
,
"CloseHandle",
公开,
kernel32.dll
.参数
对象句柄,
整数型
.DLL命令
_第一个,
整数型,
,
"Process32First"
.参数
h,
整数型
.参数
p,
s5yh5sgrty
.DLL命令
_下一个,
整数型,
,
"Process32Next"
.参数
h,
整数型
.参数
p,
s5yh5sgrty
.DLL命令
_打开进程,
整数型,
,
"OpenProcess",
,
kernel32.dll
.参数
访问级别,
整数型,
,
2035711完全访问
.参数
子进程继承,
整数型,
,
0为子进程继承
.参数
进程ID,
整数型,
,
要打开的进程标识
.DLL命令
_终止进程,
整数型,
,
"TerminateProcess"
.参数
id
.参数
a
相似回答