C# 获取内存和CPU信息的代码
2018-07-20 来源:open-open
获取cpu信息
using System.Collections; using System.Collections.Generic; using System.Management; using System.Text; namespace MergeSystem.Indexus.WinServiceCommon.SystemManagement { /// <summary> /// Represents the CPU scope information /// </summary> public class Cpu { public static void LogCpuData() { System.Collections.ArrayList result = new System.Collections.ArrayList(); ManagementScope mgmtScope = new ManagementScope(@"/. ootcimv2"); mgmtScope.Connect(); ManagementPath mp = new ManagementPath("Win32_Processor"); ManagementClass mc = new ManagementClass(mgmtScope, mp, null); ManagementObjectCollection procs = mc.GetInstances(); foreach (ManagementObject mo in procs) { foreach (PropertyData pd in mo.Properties) { switch (pd.Name) { case "DeviceID": case "Name": case "LoadPercentage": Console.WriteLine(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim()); Handler.LogHandler.Info(string.Format(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim())); Handler.LogHandler.MemoryFatalException(string.Format(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim())); break; } } Console.WriteLine(@" --- "); Handler.LogHandler.Info(@" --- "); } } } }获取内存信息
using System; using System.Collections; using System.Collections.Generic; using System.Management; using System.Text; namespace MergeSystem.Indexus.WinServiceCommon.SystemManagement { /// <summary> /// Represents the Memory scope information /// </summary> public class Memory { public static void LogMemoryData() { ManagementScope mgmtScope = new ManagementScope(@"/. ootcimv2"); mgmtScope.Connect(); ManagementPath mp = new ManagementPath("Win32_OperatingSystem"); ManagementClass mc = new ManagementClass(mgmtScope, mp, null); ManagementObjectCollection procs = mc.GetInstances(); foreach (ManagementObject mo in procs) { foreach (PropertyData pd in mo.Properties) { switch (pd.Name) { case "BuildNumber": case "BuildType": case "Caption": case "CountryCode": case "CSDVersion": case "CSName": case "CurrentTimeZone": case "FreePhysicalMemory": case "FreeSpaceInPagingFiles": case "FreeVirtualMemory": case "LastBootUpTime": case "MaxNumberOfProcesses": case "MaxProcessMemorySize": case "NumberOfProcesses": case "NumberOfUsers": case "Organization": case "OSLanguage": case "RegisteredUser": case "SerialNumber": case "ServicePackMajorVersion": case "ServicePackMinorVersion": case "SizeStoredInPagingFiles": case "SystemDevice": case "SystemDirectory": case "SystemDrive": case "TotalVirtualMemorySize": case "TotalVisibleMemorySize": case "Version": case "WindowsDirectory": Console.WriteLine(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim()); Handler.LogHandler.Info(string.Format(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim())); Handler.LogHandler.MemoryFatalException(string.Format(@"Name: {0}; Value: {1}", pd.Name, pd.Value == null ? string.Empty : pd.Value.ToString().Trim())); break; } } Console.WriteLine(@" --- "); Handler.LogHandler.Info(@" --- "); } } } }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇:C#常用操作
下一篇:C#进行INI文件的读写操作
最新资讯
热门推荐