获取WMI信息的C代码
答
private static PerformanceCounter cpuCounter;
private static PerformanceCounter memoryCounter;
[...]
cpuCounter = new PerformanceCounter
{
CategoryName = "Processor",
CounterName = "% Processor Time",
InstanceName = "_Total"
};
memoryCounter = new PerformanceCounter
{
CategoryName = "Memory",
CounterName = "Available Bytes"
};
[...]
public double CpuUsage
{
get
{
lock (lockToken)
{
return Math.Round(cpuCounter.NextValue(), 2);
}
}
}
public double MemoryUsage
{
get
{
lock (lockToken)
{
return Math.Round(memoryCounter.NextValue()/totalMemory * 100, 2);
}
}
}
总内存:
using (var searcher = new ManagementObjectSearcher("SELECT totalphysicalmemory FROM Win32_ComputerSystem"))
{
using (var wmiData = searcher.Get())
{
foreach (var mo in wmiData)
{
totalMemory = long.Parse(mo["totalphysicalmemory"].ToString());
}
}
}
为了让你必须自己做一些研究的虚拟内存。
+0
谢谢你。你如何获取可用内存和虚拟内存。 – user1297661 2012-03-28 09:17:18
+0
@ user1297661,看我的编辑。 – lurkerbelow 2012-03-28 09:21:16
+0
感谢帮助 – user1297661 2012-03-28 09:36:07
以前问的问题... – 2012-03-28 09:08:58
尝试http://www.codeproject.com/Articles/26310/Using-WMI-to-retrieve-processor-in-in-C – 2012-03-28 09:10:13
所以你能帮忙吗? – user1297661 2012-03-28 09:10:43