.net 如何获得进程列表中所有进程的路径?

zhmvb 2008-11-28 06:25:41

public static Process GetRunningInstance()
{
Process[] processes = Process.GetProcesses();
foreach (Process process in processes)
{
Console.WriteLine(process.MainModule.FileName);
}
return null;
}


如题,想得到进程的路。
可以利用process.MainModule.FileName获取到进程的路径,但上面代码会报没有权限的错误,请教各位如何才能取到进程的路径?
...全文
157 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lihuyin 2008-11-30
  • 打赏
  • 举报
回复
mark
kinghongchen 2008-11-28
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20041029/14/3503388.html
pp_shy 2008-11-28
  • 打赏
  • 举报
回复
用WMI来获取进程路径, 根据相关进程的ID号

先在项目中添加Management的引用,再在代码中添加using System.Management;

ObjectQuery query = new ObjectQuery(string.Format("select * from Win32_Process where Handle = '{0}'", strProcessID));//strProcessID为进程ID号
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
foreach (ManagementObject obj2 in searcher.Get())
{
strProcessPath = "";
if (((strProcessID == "0") || (strProcessID == "4")) || (strProcessID == "8"))//进程号为0,4或8的是系统进程无路径显示
{

}
else
{
strProcessPath = obj2["ExecutablePath"].ToString();//获取进程的路径
}
}
孤独侠客123 2008-11-28
  • 打赏
  • 举报
回复
http://www.cnblogs.com/KissKnife/archive/2006/09/24/513326.html

WMI

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧