如何用vb检测某程序是否在运行?

来源:百度知道 编辑:UC知道 时间:2024/07/04 05:02:23
我是想到了。FindWindow 这个函数,但是,好象必须是完整的程序名吧?
那如果 你要检测的那个程序 有很多版本,那又要怎么弄呢?

'在窗体代码区复制下面代码,并在Form_Load()修改具体的程序名,运行,即可。
Option Explicit

Function FindProcess(ProcessName) As Boolean
Dim ps
'枚举进程
For Each ps In GetObject("winmgmts:\\.\root\cimv2:win32_process").instances_ '循环进程
If UCase(ps.Name) = UCase(ProcessName) Then
FindProcess = True
Exit Function
End If
Next
End Function

Private Sub Form_Load()
If FindProcess("xxxx.exe") Then '在此修改为你要找的程序名
MsgBox "该程序正在运行!"
Else
MsgBox "该程序不正在运行!"
End If
End Sub

检测某程序是需要检测进程吧,FindWindow是查找窗口...别人把窗口隐藏了你找什么去~~~~~

先把找进程的贴出来,再贴查版本的....

进程查找:(我是把代码全搬出来了,有些其他你不要的函数自己清理下)
(模块)
声明:
'进程-查找
Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long
Private Declare Function Process32First Lib "kernel32" (B