Compare commits

..

3 Commits

Author SHA1 Message Date
ef49a0e618 Delete 'Sysinfo_console.cs'
This was not the right file.
2021-06-29 11:18:48 -04:00
1b4a1dd52b Start of C# rewrite.
#14
2021-06-29 11:17:15 -04:00
16af781a94 Start of C# rewrite. 2021-06-29 11:15:41 -04:00
2 changed files with 83 additions and 9 deletions

View File

@ -91,12 +91,4 @@ It will require the ability to run Powershell Scripts which is restricted by def
## Dev Notes ## Dev Notes
Going forward branch master will be write protected. Please do all further work on branches off of master. Going forward branch master will be write protected. Please do all further work on branches off of master.
I will be starting to work on rewriting the main script in C#. This will afford the following advangages:
* An executable. This will have the advange of not having to mess with the Powershell ExecutionPolicy everytime you want to run the scritp.
* The Autorun in the USB_Run.zip file will actually be able to launch the script.
* With it being writin in C# it should be more extensable and somewhat easier to manintain.

View 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);
}
}
}