public void getTypeBySpeed(RamModel thisRam) { int clockSpeed; if (thisRam.speed.Length > 5) { clockSpeed = Convert.ToInt32(thisRam.speed.Remove(4)); } else { clockSpeed = 0; } if (clockSpeed <= 1066) { thisRam.type = 21; } else if (clockSpeed > 2133) { thisRam.type = 26; } else { thisRam.type = 24; } }
public PCinfoModel getPcInfo() { PCinfoModel thisPC = new PCinfoModel(); try { if (new ManagementObjectSearcher(@"SELECT * FROM Win32_Processor") == null || new ManagementObjectSearcher(@"SELECT * FROM Win32_Processor").Get().Count <= 0) { thisPC.proesser = "No CPU"; } else { foreach (var CPU in new ManagementObjectSearcher(@"SELECT * FROM Win32_Processor").Get()) { thisPC.proesser = CPU["Name"].ToString(); } } if (new ManagementObjectSearcher(@"SELECT * FROM Win32_BaseBoard") == null || new ManagementObjectSearcher(@"SELECT * FROM Win32_BaseBoard").Get().Count <= 0) { thisPC.motherBoard = "No motherBoard"; } else { foreach (var MTB in new ManagementObjectSearcher(@"SELECT * FROM Win32_BaseBoard").Get()) { thisPC.motherBoard = MTB["Manufacturer"].ToString() + " " + MTB["Product"].ToString(); } } int i = 0; if (new ManagementObjectSearcher(@"Select * From Win32_PhysicalMemory") == null || new ManagementObjectSearcher(@"Select * From Win32_PhysicalMemory").Get().Count <= 0) { RamModel thisRam = new RamModel(); thisRam.Maker = "No Ram"; thisPC.rams.Add(thisRam); } else { foreach (var RAM in new ManagementObjectSearcher(@"Select * From Win32_PhysicalMemory").Get()) { RamModel thisRam = new RamModel(); thisRam.Maker = Convert.ToString(RAM["Manufacturer"]); thisRam.speed = Convert.ToString(RAM["Speed"]) + "MHz"; thisRam.type = Convert.ToInt32(RAM["MemoryType"]); thisRam.capacity = Convert.ToInt64(RAM["Capacity"]); thisPC.rams.Add(thisRam); } } if (new ManagementObjectSearcher(@"Select * From Win32_DiskDrive") == null || new ManagementObjectSearcher(@"Select * From Win32_DiskDrive").Get().Count <= 0) { deviceModle thisdevice = new deviceModle(); thisdevice.modleName = "No Drive"; thisPC.drives.Add(thisdevice); } else { foreach (var Drive in new ManagementObjectSearcher(@"Select * From Win32_DiskDrive").Get()) { deviceModle thisdevice = new deviceModle(); thisdevice.modleName = Convert.ToString(Drive["Model"]) + ++i; if (Convert.ToInt64(Drive["Size"]) > 0) { thisdevice.Size = Math.Round((Convert.ToInt64(Drive["Size"]) / Math.Pow(1024, 3)), 3) + "GB"; } thisPC.drives.Add(thisdevice); } } if (new ManagementObjectSearcher(@"Select * From Win32_VideoController") == null || new ManagementObjectSearcher(@"Select * From Win32_VideoController").Get().Count <= 0) { thisPC.videoCard = "No GPU"; } else { foreach (var GPU in new ManagementObjectSearcher(@"Select * From Win32_VideoController").Get()) { thisPC.videoCard = Convert.ToString(GPU["Name"]); } } if (new ManagementObjectSearcher(@"Select * From Win32_OperatingSystem").Get() == null || new ManagementObjectSearcher(@"Select * From Win32_OperatingSystem").Get().Count <= 0) { thisPC.os = "No OS"; } else { foreach (var OS in new ManagementObjectSearcher(@"Select * From Win32_OperatingSystem").Get()) { if (String.IsNullOrEmpty(Convert.ToString(OS["Name"])) || Convert.ToString(OS["Name"]).Split().Length < 1) { thisPC.os = Convert.ToString(OS["Name"]) + " " + Convert.ToString(OS["OSArchitecture"]) + " "; } else { thisPC.os = Convert.ToString(OS["Name"]).Split('|')[0] + " " + Convert.ToString(OS["OSArchitecture"]) + " "; } string version = ""; #region Switch OS Name case switch (Convert.ToString(OS["BuildNumber"])) { case "2600": version = "Windows XP"; break; case "2600.1105-1106": version = "Windows XP, Service Pack 1"; break; case "2600.218": version = "Windows XP, Service Pack 2"; break; case "3790.118": version = "Windows Server 2003, Service Pack 1"; break; case "3790": version = "Windows Server 2003 R2"; break; case "6000": version = "Windows Vista"; break; case "4500": version = "Windows Home Server"; break; case "6001": version = "Windows Vista, Service Pack 1"; break; case "6002": version = "Windows Vista, Service Pack 2"; break; case "7600": version = "Windows 7"; break; case "7601": version = "Windows Server 2008 R2, Service Pack 1"; break; case "8400": version = "Windows Home Server 2011"; break; case "9200": version = "Windows 8"; break; case "9600": version = "Windows 8.1"; break; case "10240": version = "Windows 10, Version 1507"; break; case "10586": version = "Windows 10, Version 1511"; break; case "14393": version = "Windows 10, Version 1607"; break; case "15063": version = "Windows 10, Version 1703"; break; case "16299": version = "Windows 10, Version 1709"; break; case "17134": version = "Windows 10, Version 1803"; break; case "17763": version = "Windows 10, Version 1809"; break; case "6003": version = "Windows Server 2008, Service Pack 2, Rollup KB4489887"; break; case "18362": version = "Windows 10, Version 1903"; break; case "18363": version = "Windows 10, Version 1909"; break; case "19041": version = "Windows 10, Version 2004"; break; case "19042": version = "Windows 10, Version 20H2"; break; default: version = "Can't Find " + OS["BuildNumber"]; break; } #endregion thisPC.os += version; } } } catch (Exception ex) { System.Diagnostics.Trace.Write(ex.ToString()); System.Diagnostics.Trace.Assert(false, ex.ToString()); string debugTxetPath = "C:\\getPcInfo.txt"; using (TextWriterTraceListener _DebugLog = new TextWriterTraceListener(debugTxetPath)) { Trace.Listeners.Add(_DebugLog); Trace.AutoFlush = true; Trace.WriteLine("SQL Area error:" + ex.StackTrace.ToString() + ex.Source.ToString() + ex.Data.ToString()); Trace.WriteLine(ex.ToString()); Trace.Write(thisPC.proesser + "\n" + thisPC.motherBoard + "\n" + thisPC.rams.ToArray() + "\n" + thisPC.drives.ToArray() + "\n" + thisPC.videoCard + "\n" + thisPC.os); Trace.Listeners.Clear(); Trace.Close(); } throw ex; } return(thisPC); }