#region WMI方式获取CPU信息
public string getCpuInfo()
{
ManagementObjectCollection moc = mcp.getQueryResult("select * from Win32_Processor");
string[] list = new string[moc.Count];
int i = 0;
foreach(ManagementObject mo in moc)
{
string total = mo.GetPropertyValue("LoadPercentage").ToString();
list[i]=total;
i++;
}
return list[0].ToString();
}
#endregion
#region WMI方式获取内存使用率
public string getMemoryUsage()
{
ManagementClass mc = new ManagementClass("Win32_ComputerSystem");// Win32_LogicalMemoryConfiguration已废弃
long totalm = 1; long avilablem = 1;
ManagementObjectCollection mcr = mc.GetInstances();
foreach(ManagementObject mo in mcr)
{
if (mo["TotalPhysicalMemory"] != null)
{
totalm = long.Parse(mo["TotalPhysicalMemory"].ToString());
}
//string total = mo["TotalPhysicalMemory"].ToString();
//totalm = int.Parse(total);
}
ManagementObjectCollection moc = mcp.getQueryResult("select * from Win32_PerfRawData_PerfOS_Memory");
foreach (ManagementObject mo in moc)
{
string avilable = mo.GetPropertyValue("AvailableBytes").ToString();
avilablem = long.Parse(avilable);
}
long usedm = totalm - avilablem;
double memoryusage = (double)usedm * (double)100 / (double)totalm ;
return memoryusage.ToString();
}
#endregion
源代码下载:http://download.youkuaiyun.com/detail/zhanghua9948/8364097