易语言 怎样取指定程序开始运行的起始时间?

 我来答
djlyr
2012-05-12 · TA获得超过416个赞
知道小有建树答主
回答量:193
采纳率:0%
帮助的人:242万
展开全部

其实不难,首先你要知道这个程序的进程名。利用进程名来判断是否打开了。前提是你的软件要先打开,例如 asdf.exe 程序是你要检测的程序。

那么你易语言代码就是图片里面的样子。

里面的“进程是否存在”这个不是核心代码,需要去找一下模块或子程序源代码。

里面的“是否记录”这个是用于判断是否已经记录过了。如果等于0的话就是没有被记录过,那么现在进行记录,如果等于1的话,那么就是已经被记录过了,不在进行记录。

追问
谢谢djlyr,我好像有点方向了,能否在说明白点?我的意思是说我这个程序要监控QQ,当发现QQ开始运行就记下这个时间,然后30分钟后就结束它。
蓉俊酷软
推荐于2021-01-17 · TA获得超过248个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:108万
展开全部
.版本 2

.程序集 窗口程序集1

.子程序 __启动窗口_首次激活

写到文件 (取运行目录 () + “\程序运行时间” + 时间到文本 (取现行时间 (), ) + “.txt”, 到字节集 (“运行时间:” + 时间到文本 (取现行时间 (), )))
---------------------------------------------------------------------------------------
看了楼下的你的追问,我直接给你源码
--------------------------------------------------------------------------------------
.版本 2
.支持库 eAPI

.程序集 窗口程序集1
.程序集变量 检测时间, 日期时间型
.程序集变量 设置时间, 双精度小数型
.程序集变量 对比时间, 双精度小数型

.子程序 进程是否存在, 逻辑型
.参数 进程名, 文本型
.局部变量 n1, 整数型
.局部变量 n, 进程信息, , "0"

n = 取系统进程列表 ()
.计次循环首 (取数组成员数 (n), n1)
.如果 (n [n1].进程名称 = 进程名)
返回 (真)
.否则

.如果结束

.计次循环尾 ()
返回 (假)

.子程序 _按钮1_被单击

时钟1.时钟周期 = 1000
设置时间 = 5

.子程序 __启动窗口_创建完毕

.如果真 (进程是否存在 (“QQ.exe”) = 真)
检测时间 = 取现行时间 ()

.如果真结束

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

对比时间 = 取时间间隔 (取现行时间 (), 检测时间, 8)
.如果真 (对比时间 = 设置时间)
终止进程 (“QQ.exe”)
时钟1.时钟周期 = 0
信息框 (“已完成了任务”, 0, )
-----------------------------------------------
时间设置在这句:设置时间 = 5(这里是秒,你可以换算成分或小时)
追问
谢谢你,但你这个如果在QQ程序前运行就取不到“检测时间”。用2个时钟我能做到,用一个呢?有什么好方法?
追答
你可以把:
.如果真 (进程是否存在 (“QQ.exe”) = 真)
检测时间 = 取现行时间 ()

.如果真结束
放到时间周期事件下,再加一逻辑变量,如果是真,检测时间检测一次就不再发生,是假,每秒再检测一次,给你源码:
.版本 2
.支持库 eAPI
.支持库 spec

.程序集 窗口程序集1
.程序集变量 检测时间, 日期时间型
.程序集变量 设置时间, 双精度小数型
.程序集变量 对比时间, 双精度小数型
.程序集变量 是否检测到, 逻辑型

.子程序 进程是否存在, 逻辑型
.参数 进程名, 文本型
.局部变量 n1, 整数型
.局部变量 n, 进程信息, , "0"

n = 取系统进程列表 ()
.计次循环首 (取数组成员数 (n), n1)
.如果 (n [n1].进程名称 = 进程名)
返回 (真)
.否则

.如果结束

.计次循环尾 ()
返回 (假)

.子程序 _按钮1_被单击

时钟1.时钟周期 = 1000
设置时间 = 5

.子程序 __启动窗口_创建完毕

检测时间 = 取现行时间 ()

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

.判断开始 (进程是否存在 (“QQ.exe”) = 真 且 是否检测到 = 假)
是否检测到 = 真
检测时间 = 取现行时间 ()
.判断 (进程是否存在 (“QQ.exe”) = 假)
检测时间 = 取现行时间 ()
.默认

对比时间 = 取时间间隔 (取现行时间 (), 检测时间, 8)
调试输出 (对比时间)

.如果真 (对比时间 ≥ 设置时间 且 进程是否存在 (“QQ.exe”) = 真)
终止进程 (“QQ.exe”)
时钟1.时钟周期 = 0
信息框 (“已完成了任务”, 0, )

.如果真结束
-----------------------------------------------------------------------------
刚才有点问题,现在更改过来了,你可以再测试一下,在本机上测试完全可行,嘻,记得给我满意答案哦,笑
--------------------------------------------------------------------------------
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huangyingyingi
2012-05-12
知道答主
回答量:1
采纳率:0%
帮助的人:1629
展开全部
易语言有个取启动时间 ()的方法
追问
我要取一个程序启动时的时间,不是取系统运行时间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式