vb如何获取当前已运行的程序路径

就比如我的qq已经运行了怎么可以获取他的文件路径在哪里,要获取程序的路径。

第1个回答  2017-12-23
Option Explicit

Private Sub Command1_Click()
MsgBox ExePath("vb6.exe")
End Sub

Public Function ExePath(ExeNm As String) As String
Dim objWMIService, colProcesslist, objProcess
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colProcesslist = objWMIService.ExecQuery("Select * from Win32_Process Where Name = '" & ExeNm & "'")
If colProcesslist.Count > 0 Then
For Each objProcess In colProcesslist
ExePath = ExePath & objProcess.ExecutablePath & vbCrLf
Next
End If
Set objWMIService = Nothing
Set colProcesslist = Nothing
End Function

追问

谢谢大神呐

本回答被提问者和网友采纳
第2个回答  2017-12-23
App.Path这个是过去当前运行程序的路径追问

我不要本身程序路径,我要外部程序的路径

追答

这个获取那个外部程序的窗口的句柄吧,然后通过句柄找他的路径。

相似回答