看流星社区

 找回密码
 注册账号
查看: 2965|回复: 2

[VB] 用vb如何已知进程名找到该进程的pid?

[复制链接]

该用户从未签到

发表于 2011-4-8 14:14:55 | 显示全部楼层 |阅读模式
比如说,我们都知道,QQ的进程名,那么,如何根据这个已知条件,得到程序的进程pid呢?请高手指点一二,谢谢!  

最好给出代码?

该用户从未签到

发表于 2011-4-8 14:15:08 | 显示全部楼层
Private Sub Command1_Click()
    Dim i As Long
    Dim proc As PROCESSENTRY32
    Dim snap As Long
    Dim exename As String
    Dim theloop As Long
    Dim ret As ListItem
    Dim n%
    ListView1.ListItems.Clear '清空所有内容
    snap = CreateToolhelpSnapshot(TH32CS_SNAPall, 0) '获得进程“快照”的句柄
    proc.dwSize = Len(proc)
    theloop = ProcessFirst(snap, proc) '获取第一个进程,并得到其返回值
    i = 0
    While theloop <> 0 '当返回值非零时继续获取下一个进程
        exename = proc.szExeFile
        exeto(i) = exename
        idto(i) = proc.th32ProcessID
        Set ret = ListView1.ListItems.Add(, "first" & CStr(i), exename) '将进程名添加到第一项中
        ListView1.ListItems("first" & CStr(i)).SubItems(1) = proc.th32ProcessID '将进程ID添加到第二项中
        i = i + 1
        theloop = ProcessNext(snap, proc)
    Wend
    CloseHandle snap '关闭进程“快照”句柄
End Sub

看看这个是不是你要的。

该用户从未签到

 楼主| 发表于 2011-4-8 14:15:18 | 显示全部楼层
谢谢你,解决了
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-20 18:47

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表