吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4384|回复: 0
收起左侧

[其他转载] PID获得进程名

 关闭 [复制链接]
mengl520 发表于 2011-9-13 00:01
Option Explicit
'============================================================
'//功能:PID获得进程名
'//用法:MsgBox GetProcessNameByProcessId(2960)
'============================================================
Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessID As Long) As Long
Private Declare Function GetModuleFileNameExA Lib "psapi.dll" (ByVal hProcess As Long, ByVal hModule As Long, ByVal ModuleName As String, ByVal nSize As Long) As Long
Private Declare Function CloseHandle Lib "kernel32.dll" (ByVal hObject As Long) As Long
Private Declare Function EnumProcessModules Lib "psapi.dll" (ByVal hProcess As Long, ByRef lphModule As Long, ByVal cb As Long, ByRef cbNeeded As Long) As Long
Public Function GetProcessNameByProcessId(ByVal Pid As Long) As String
     Dim szBuf(1 To 250) As Long
     Dim Ret As Long
     Dim szPathName As String
     Dim nSize As Long
     Dim hProcess As Long
     Dim SplitStr() As String
     hProcess = OpenProcess(&H400 Or &H10, 0, Pid)
     If hProcess <> 0 Then
          Ret = EnumProcessModules(hProcess, szBuf(1), 250, Pid)
          If Ret <> 0 Then
                szPathName = Space(260)
                nSize = 500
                Ret = GetModuleFileNameExA(hProcess, szBuf(1), szPathName, nSize)
                SplitStr = Split(szPathName, "\")
                GetProcessNameByProcessId = SplitStr(UBound(SplitStr))
          End If
     End If
     Ret = CloseHandle(hProcess)
End Function

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-5 04:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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