C#Winform獲取當前系統的基本信息


SystemInformation類

 在.net的系統信息類庫中,最基本的類庫是SystemInformation類,包含在System.Windows.Forms名字空間中。

 該類庫可以幫助我們獲得有關系統的基本信息;這個類中只包含了幾個從System.Object類繼承的公共方法,沒有提供其他的方法。

 系統的信息可以通過這個類的公共靜態成員獲得,我們可以根據需要獲得的信息選取合適的成員。

 

Environment 類

 第二種方法是通過Environment 類

 該類提供了有關當前環境和平台的信息以及操作它們的方法;Environment 類除了提供了一些靜態成員外,還提供了一些靜態方法。

 

 RegistryKey 類

 第三種方式是通過注冊表查詢系統信息,這是最傳統的方法,也是功能最強大的方法和最復雜的方法。

 .net中注冊表封裝在RegistryKey 類 中,位於Microsoft.win32命名空間中。

 這個類和前兩個類不同,它的公共屬性我們能利用的機會很少,我們為了獲得系統信息主要是使用它的OpenSubKey 方法,

 然而為了使用這個方法,我們必須對注冊表有相當的了解才行,這也正是使用這個類獲得系統信息的復雜之處。

 

 練習實例

 1 using System;
 2 using System.Windows.Forms;
 3 
 4 namespace Winform_1
 5 {
 6     public partial class Form1 : Form
 7     {
 8         public Form1()
 9         {
10             InitializeComponent();
11         }
12 
13         private void Form1_Load(object sender, EventArgs e)
14         {
15             // 計算機名稱 SystemInformation
16             richTextBox1.AppendText("計算機名稱: " + SystemInformation.ComputerName);
17             // 換行
18             richTextBox1.AppendText(Environment.NewLine);
19             // 計算機名稱 Environment
20             richTextBox1.AppendText("計算機名稱: " + Environment.MachineName);
21             richTextBox1.AppendText(Environment.NewLine);
22             // 用戶名稱
23             richTextBox1.AppendText("用戶名稱: " + Environment.UserName);
24             richTextBox1.AppendText(Environment.NewLine);
25             // 平台標識
26             richTextBox1.AppendText("平台標識: " + Environment.OSVersion.Platform);
27             richTextBox1.AppendText(Environment.NewLine);
28             // 操作系統版本號
29             richTextBox1.AppendText("版本號: " + Environment.OSVersion.VersionString);
30             richTextBox1.AppendText(Environment.NewLine);
31             // 處理器個數
32             richTextBox1.AppendText("處理器個數: " + Environment.ProcessorCount);
33             richTextBox1.AppendText(Environment.NewLine);
34             // 判斷操作系統位數 64位&32位
35             if (Environment.Is64BitOperatingSystem)
36             {
37                 richTextBox1.AppendText("操作系統位數: 64bit.");
38             }
39             else
40             {
41                 richTextBox1.AppendText("操作系統位數: 32bit.");
42             }
43             richTextBox1.AppendText(Environment.NewLine);
44             // 判斷網絡
45             if (SystemInformation.Network)
46             {
47                 richTextBox1.AppendText("網絡連接: 已連接");
48             }
49             else
50             {
51                 richTextBox1.AppendText("網絡連接: 未連接");
52             }
53             richTextBox1.AppendText(Environment.NewLine);
54             // 判斷系統啟動模式
55             if (SystemInformation.BootMode.ToString() == "Normal")
56                 richTextBox1.AppendText("啟動模式: 正常啟動");
57             if (SystemInformation.BootMode.ToString() == "FailSafe")
58                 richTextBox1.AppendText("啟動模式: 安全啟動");
59             if (SystemInformation.BootMode.ToString() == "FailSafeWithNework")
60                 richTextBox1.AppendText("啟動方式: 通過網絡服務啟動");
61             richTextBox1.AppendText(Environment.NewLine);
62             // 顯示器數量
63             richTextBox1.AppendText("顯示器數量: " + SystemInformation.MonitorCount);
64             richTextBox1.AppendText(Environment.NewLine);
65             // 顯示器分辨率
66             richTextBox1.AppendText("顯示器分辨率: " + SystemInformation.PrimaryMonitorMaximizedWindowSize.Width + " * " + SystemInformation.PrimaryMonitorMaximizedWindowSize.Height);
67             richTextBox1.AppendText(Environment.NewLine);
68             // 當前分辨率
69             richTextBox1.AppendText("主顯示器當前分辨率: " + SystemInformation.PrimaryMonitorSize.Width + " * " + SystemInformation.PrimaryMonitorSize.Height);
70             richTextBox1.AppendText(Environment.NewLine);
71             // 鼠標按鈕個數
72             richTextBox1.AppendText("鼠標按鈕個數: " + SystemInformation.MouseButtons.ToString());
73             richTextBox1.AppendText(Environment.NewLine);
74             // 鼠標速度
75             richTextBox1.AppendText("鼠標速度: " + SystemInformation.MouseSpeed.ToString());
76             richTextBox1.AppendText(Environment.NewLine);
77             // 系統目錄
78             richTextBox1.AppendText("系統目錄: " + Environment.SystemDirectory);
79             richTextBox1.AppendText(Environment.NewLine);
80             // 系統內存頁
81             richTextBox1.AppendText("系統內存頁: " + Environment.SystemPageSize.ToString() + "MB");
82             richTextBox1.AppendText(Environment.NewLine);
83         }
84     }
85 }

測試效果

 

 

 

*** |  以上內容僅為學習參考、學習筆記使用  | ***


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM