2025-05-29 04:28:17 女排世界杯美国

【易语言】获取进程列表

B站同名

易语言讨论可加QQ群:160822246

目录

一.开头

二.欲实现效果概述

三.开发详解

一.开头

今天给大家讲一讲易语言怎么获取系统进程列表,讲的会很潦草,最终效果如下图所示,具体理解要看你们自己去实践了

效果

下面我们直接开始

二.欲实现效果概述

界面设计

如图,我们要取系统进程列表,那么显示就直接显示在编辑框内,用一个时钟负责定时的检查,看系统进程列表是否存在变化。

OK,这个软件听上去很简单,下面来实际开发。

三.开发详解

获取系统进程列表,通常采用自带命令取系统进程列表 (),来看看官方的定义:

调用格式: 〈进程信息数组〉 取系统进程列表 () - 应用接口支持库->系统处理 英文名称:GetProcessList 取所有正在运行的程序列表。成功返回程序列表数组;失败返回空。本命令为初级命令。

操作系统需求: Windows

可以看到,返回值需要一个进程信息型的数组来接受,那么我们就会写了

首先直接写到时钟的周期时间内,时钟周期为100:

.版本 2

.支持库 eAPI

.子程序 _时钟1_周期事件

.局部变量 列表, 进程信息, , "0"

列表 = 取系统进程列表 ()

光是取到了,但我们没有显示到编辑框,下一步把进程名称显示在编辑框:

.版本 2

.支持库 eAPI

编辑框1.内容 = “”

编辑框1.加入文本 (列表 [1].进程名称)

.计次循环首 (取数组成员数 (列表) - 1, n)

编辑框1.加入文本 (#换行符 + 列表 [n + 1].进程名称)

.计次循环尾 ()

首先清空编辑框,然后加入列表[1].进程名称

虽然进程信息里包含不少东西,但我们这次只讲进程名称

需要注意,这是我为了简化代码的写法,是为了不再最后多一个换行符或是在开头多一个换行符,所以循环内用的成员数-1和n+1,这个需要自行理解

运行:

运行效果

可以看到程序一直在滚动,界面拖动时有明显卡顿,下面我们来优化代码:

.版本 2

.局部变量 内容, 文本型

新建一个文本型局部变量内容

更换循环的代码:

.版本 2

.支持库 eAPI

内容 = 列表 [1].进程名称

.计次循环首 (取数组成员数 (列表) - 1, n)

内容 = 内容 + #换行符 + 列表 [n + 1].进程名称

.计次循环尾 ()

最后显示内容于编辑框内:

编辑框1.内容 = 内容

运行以后,发现滚动条一直在上,无法拖动,判断是时钟太快,每0.1秒就更换编辑框的内容,事实上,进程内容不一定改变

下面优化这一部分

新建程序集变量“旧列表”

.版本 2

.支持库 eAPI

.程序集变量 旧列表, 进程信息, , "0"

程序集内改为这样:

.版本 2

.支持库 eAPI

列表 = 取系统进程列表 ()

.如果真 (取反 (数组比较 (旧列表, 列表)))

编辑框1.内容 = “”

内容 = 列表 [1].进程名称

.计次循环首 (取数组成员数 (列表) - 1, n)

内容 = 内容 + #换行符 + 列表 [n + 1].进程名称

.计次循环尾 ()

编辑框1.内容 = 内容

复制数组 (旧列表, 列表)

.如果真结束

要在一开始看看两次列表是否一致,一致就不替换

数组比较不是易语言命令,而是子程序,内容如下:

.版本 2

.支持库 eAPI

.子程序 数组比较, 逻辑型

.参数 a, 进程信息, 数组

.参数 b, 进程信息, 数组

.局部变量 n, 整数型

.判断开始 (取数组成员数 (a) = 取数组成员数 (b))

.计次循环首 (取数组成员数 (a), n)

.如果真 (a [n].进程名称 ≠ b [n].进程名称)

返回 (假)

.如果真结束

.计次循环尾 ()

.默认

返回 (假)

.判断结束

返回 (真)

需注意,若相等返回真,但我们要在相等时不执行,需要用到“取反()”

执行,程序取到了列表。

本文到此完毕

到柬埔寨打工怎么样,柬埔寨打工体验,薪资、生活与未来发展分析
形容女生很有钱的成语
top