private void GetVideoControllerInformation(ref AboutHost a) { using (var search = new ManagementObjectSearcher("Select * from Win32_VideoController")) { foreach (var mo in search.Get()) { a.VideoCardName = mo["Name"]?.ToString(); a.VideoRAM = ToLong(mo, "AdapterRAM", 1024 * 1024); a.VideoProcessor = mo["VideoProcessor"]?.ToString(); } } }
private void GetMemoryInformation(ref AboutHost a) { using (var search = new ManagementObjectSearcher("Select * from Win32_OperatingSystem")) { foreach (var mo in search.Get()) { a.TotalVirtualMemory = ToLong(mo, "TotalVirtualMemorySize", 1024); a.FreeVirtualMemory = ToLong(mo, "FreeVirtualMemory", 1024); a.TotalPhysicalMemory = ToLong(mo, "TotalVisibleMemorySize", 1024); a.FreePhysicalMemory = ToLong(mo, "FreePhysicalMemory", 1024); break; } } }
public AboutHost Get() { var a = new AboutHost(); a.Version = Assembly.GetExecutingAssembly().GetName().Version; a.OS = Environment.OSVersion; a.Is64BitOperatingSystem = Environment.Is64BitOperatingSystem; a.Is64BitProcess = Environment.Is64BitProcess; a.ProcessorCount = Environment.ProcessorCount; a.WorkingSet = Environment.WorkingSet; a.ConnectedUserCount = _sessionManager.GetUsers().Count(); GetMemoryInformation(ref a); GetVideoControllerInformation(ref a); a.Interpreters = _interpManager.Interpreters.Select(x => x.Name).ToArray(); return a; }