WinForm(C#)根据进程名获取进程的内存使用量?
答案:2 悬赏:70 手机版
解决时间 2021-02-26 18:02
- 提问者网友:抽煙菂渘情少年
- 2021-02-26 04:08
WinForm(C#)根据进程名获取进程的内存使用量?
最佳答案
- 五星知识达人网友:千夜
- 2021-02-26 05:44
用Process, (System.Diagnose;) Process.GetProcessByName, 返回一个Process数组。
对找到的Process对象有privatebytes属性,这个属性可以认为是进程的内存使用量。
对找到的Process对象有privatebytes属性,这个属性可以认为是进程的内存使用量。
全部回答
- 1楼网友:千杯敬自由
- 2021-02-26 07:08
需要添加对 system.management.dll 的引用
using system.diagnostics;
using system.management;
static void main(string[] args)
{
foreach (process p in process.getprocesses())
{
console.write(p.processname);
console.write("----");
console.writeline(getprocessusername(p.id));
}
console.readkey();
}
private static string getprocessusername(int pid)
{
string text1 = null;
selectquery query1 = new selectquery("select * from win32_process where processid=" + pid);
managementobjectsearcher searcher1 = new managementobjectsearcher(query1);
try
{
foreach (managementobject disk in searcher1.get())
{
managementbaseobject inpar = null;
managementbaseobject outpar = null;
inpar = disk.getmethodparameters("getowner");
outpar = disk.invokemethod("getowner", inpar, null);
text1 = outpar["user"].tostring();
break;
}
}
catch
{
text1 = "system";
}
return text1;
}
进程名 是 p.processname
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯