以下是使用C#獲取系統關鍵信息(包括CPU、內存、硬盤、用戶和網絡狀態)的示例代碼。你可以在C#項目中運行這段代碼來獲取相關信息。
using System;using System.Diagnostics;using System.Management;using System.Net.NetworkInformation;
class Program{
? ?static void Main(string[] args)
? ?{
? ? ? ?GetCpuInfo();
? ? ? ?GetMemoryInfo();
? ? ? ?GetDiskInfo();
? ? ? ?GetUserInfo();
? ? ? ?GetNetworkInfo();
? ?}
? ?static void GetCpuInfo()
? ?{
? ? ? ?var cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
? ? ? ?Console.WriteLine("CPU使用率: " + cpuCounter.NextValue() + "%");
? ?}
? ?static void GetMemoryInfo()
? ?{
? ? ? ?var ramCounter = new PerformanceCounter("Memory", "Available MBytes");
? ? ? ?Console.WriteLine("可用內存: " + ramCounter.NextValue() + " MB");
? ?}
? ?static void GetDiskInfo()
? ?{
? ? ? ?DriveInfo[] drives = DriveInfo.GetDrives();
? ? ? ?foreach (var drive in drives)
? ? ? ?{
? ? ? ? ? ?if (drive.IsReady)
? ? ? ? ? ?{
? ? ? ? ? ? ? ?Console.WriteLine($"驅動器: {drive.Name}");
? ? ? ? ? ? ? ?Console.WriteLine($"文件系統: {drive.DriveFormat}");
? ? ? ? ? ? ? ?Console.WriteLine($"可用空間: {drive.AvailableFreeSpace / (1024 * 1024)} MB"); ? ?
? ? ? ? ? ? ? ?Console.WriteLine($"總空間: {drive.TotalSize / (1024 * 1024)} MB");
? ? ? ? ? ?}
? ? ? ?}
? ?}
? ?static void GetUserInfo()
? ?{
? ? ? ?string userName = Environment.UserName;
? ? ? ?Console.WriteLine("當前登錄用戶: " + userName);
? ?}
? ?static void GetNetworkInfo()
? ?{
? ? ? ?NetworkInterface[] networkInterfaces = NetworkInterface.GetAllNetworkInterfaces();
? ? ? ?foreach (var ni in networkInterfaces)
? ? ? ?{
? ? ? ? ? ?Console.WriteLine($"網絡接口: {ni.Name}");
? ? ? ? ? ?Console.WriteLine($"狀態: {ni.OperationalStatus}");
? ? ? ? ? ?Console.WriteLine($"IP地址: {ni.GetIPProperties().UnicastAddresses[0].Address}");
? ? ? ?}
????}}
說明:
CPU 使用率:使用?PerformanceCounter?獲取當前 CPU 使用率。
內存信息:使用?PerformanceCounter?獲取可用內存。
硬盤信息:使用?DriveInfo?獲取系統中所有可用驅動器的信息。
用戶信息:使用?Environment.UserName?獲取當前登錄的用戶。
網絡信息:使用?NetworkInterface?獲取所有網絡接口的信息及狀態。
注意:?? ?
請確保你運行這個代碼的環境有相關的權限,特別是在訪問某些系統信息時。
該文章在 2024/12/4 17:22:41 編輯過