API还没学,不会用。我的想法是,结合cmd下的tasklist命令中的筛选功能与vb的文件处理,检测出是否存在该进程,我使用的是command按钮检测,你也可以用这个思想替换为Timer检测。我刚做了一个可以检测进程的程序, 有不懂的追问,一定要 拿到这300分。。。>_<界面如下:
代码如下:=============================================================Option ExplicitDim prce, chk As String 'prce记录进程名,chk检测Private Sub Command1_Click()Dim a As StringDim i As Integerprce = Trim(Tx1Text) '文本框名称更改为TX1'prce = "QQexe"Shell "cmd /c tasklist /fi ""imagename eq " & prce & """ >c:\1txt" '用tasklist筛选Open "C:\1txt" For Input As #1 '获得信息 While EOF(1) = False a = "" Line Input #1, chk For i = 1 To Len(prce) a = a & Mid(chk, i, 1) Next If a = prce Then '检测到 MsgBox "进程存在", vbOKOnly, "找到啦``" Close #1 Kill ("C:\1txt") '删除临时文件 Exit Sub End If WendClose #1MsgBox "进程未找到,请注意进程名的大小写"Kill ("C:\1txt") '删除临时文件End Sub====================================================经调试,检测可以成功, 记住,在文本框中输入进程名时一定要注意进程名的大小写。。。。
bat是解释脚本,所以运行时并不是bat本身在运行,而是它的解释器cmdexe在运行。您这个思路应该不行。
有一个折衷的办法,就是bbat在运行开始写一句@echo A>runlogtxt,在结尾在写一句@echo Z>runlogtxt。
您检测的批处理可以循环读取runlogtxt的内容,直接写
@if exist runlogtxt (
@set /p runcheck=<runlogtxt
@if %runcheck%==A (
@echo bbat在运行
) else (
@echo bbat未运行
)
) else (
@echo bbat位运行
)
版本 2
子程序 _时钟1_周期事件
如果 (进程是否存在 (“Clientexe”))
标签10标题 = “QQ堂状态:已运行”
否则
标签10标题 = “QQ堂状态:未运行”
做个例子哈 望采纳
以上就是关于用什么代码来探测.exe程序是否已在运行全部的内容,包括:用什么代码来探测.exe程序是否已在运行、批处理 如何检测某个程序是否在运行、易语言检查某程序是否运行怎么写 等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)