Compare commits
4 Commits
bf11d64feb
...
csharp-rew
| Author | SHA1 | Date | |
|---|---|---|---|
| ef49a0e618 | |||
| 1b4a1dd52b | |||
| 16af781a94 | |||
| 9170d37d0c |
82
Sysinfo_Console/Sysinfo_Console.cs
Normal file
82
Sysinfo_Console/Sysinfo_Console.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Management;
|
||||
using System.IO;
|
||||
using System.Threading.Tasks;
|
||||
using System.Text;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Sysinfo_Console
|
||||
{
|
||||
class Sysinfo_Console
|
||||
{
|
||||
public static List<String> System_Information()
|
||||
{
|
||||
List<String> all_info = new List<String>();
|
||||
//Create an object of ManagementObjectSearcher class and pass query as parameter.
|
||||
ManagementObjectSearcher win32_mos = new ManagementObjectSearcher("select * from Win32_OperatingSystem");
|
||||
ManagementObjectSearcher ram_mos = new ManagementObjectSearcher("select * from Win32_PhysicalMemory");
|
||||
|
||||
Double full_ram = 0;
|
||||
|
||||
foreach (ManagementObject managementObject in win32_mos.Get())
|
||||
{
|
||||
if (managementObject["Caption"] != null)
|
||||
{
|
||||
all_info.Add("Operating System Name: \n" + managementObject["Caption"].ToString());
|
||||
//Console.WriteLine("Operating System Name : " + managementObject["Caption"].ToString()); //Display operating system caption
|
||||
}
|
||||
if (managementObject["OSArchitecture"] != null)
|
||||
{
|
||||
all_info.Add("Operating System Architecture: \n" + managementObject["OSArchitecture"].ToString());
|
||||
//Console.WriteLine("Operating System Architecture : " + managementObject["OSArchitecture"].ToString()); //Display operating system architecture.
|
||||
}
|
||||
if (managementObject["CSDVersion"] != null)
|
||||
{
|
||||
all_info.Add(managementObject["CSDVersion"].ToString());
|
||||
//Console.WriteLine("Operating System Service Pack : " + managementObject["CSDVersion"].ToString()); //Display operating system version.
|
||||
}
|
||||
}
|
||||
foreach(ManagementObject managementObject in ram_mos.Get())
|
||||
{
|
||||
if (managementObject["Capacity"] != null)
|
||||
{
|
||||
//Console.WriteLine(managementObject["Capacity"].ToString());
|
||||
full_ram += Convert.ToDouble(managementObject["Capacity"].ToString());
|
||||
}
|
||||
}
|
||||
all_info.Add("RAM:\n" + (full_ram / 1073741824) + "GB");
|
||||
//Console.ReadKey();
|
||||
return all_info;
|
||||
}
|
||||
|
||||
public static void Display_System_Information(List<String> computer_info)
|
||||
{
|
||||
Console.WriteLine("Displaying operating system info....\n");
|
||||
foreach (var p in computer_info)
|
||||
{
|
||||
Console.WriteLine(p);
|
||||
}
|
||||
}
|
||||
|
||||
public static void Wirte_System_Information(List<String> computer_info, String desktop_path)
|
||||
{
|
||||
String file_path = desktop_path + "\\Sysinfo.txt";
|
||||
File.WriteAllLines(file_path, computer_info);
|
||||
Console.WriteLine("Writing info to: " + file_path);
|
||||
//foreach (var line in computer_info)
|
||||
//{
|
||||
// File.WriteAllLines(".\\Sysinfo.txt", line);
|
||||
//}
|
||||
}
|
||||
static void Main(string[] args)
|
||||
{
|
||||
String current_path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
|
||||
String desktop_path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
|
||||
Console.WriteLine(current_path + "\n" + desktop_path);
|
||||
List<String> machine_info = System_Information();
|
||||
Display_System_Information(machine_info);
|
||||
Wirte_System_Information(machine_info, desktop_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3,4 +3,4 @@ REM Runs the quick run commands form the readme.md
|
||||
REM https://efrick.ddns.net/git/efrick/Sysinfo/src/branch/master/README.md#quick-run
|
||||
REM This must be run from an elevated prompt.
|
||||
|
||||
Powershell.exe -command "$current_execution_policy = Get-ExecutionPolicy; Set-ExecutionPolicy Bypass CurrentUser;$current_path = pwd; .\sysinfo.ps1 -write_output -file_location $current_path.Path"
|
||||
Powershell.exe -command "$current_execution_policy = Get-ExecutionPolicy; Set-ExecutionPolicy Bypass CurrentUser;$current_path = pwd; .\sysinfo.ps1 -write_output -file_location $current_path.Path;Set-ExecutionPolicy $current_execution_policy CurrentUser"
|
||||
|
||||
Reference in New Issue
Block a user