欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#編程獲取客戶端計(jì)算機(jī)硬件及系統(tǒng)信息功能示例

 更新時(shí)間:2017年01月24日 11:48:47   作者:pan_junbiao  
這篇文章主要介紹了C#編程獲取客戶端計(jì)算機(jī)硬件及系統(tǒng)信息功能,可實(shí)現(xiàn)針對(duì)客戶端系統(tǒng)CPU、硬盤、主板等硬件信息及客戶端操作系統(tǒng)、IP、MAC等信息的操作技巧,需要的朋友可以參考下

本文實(shí)例講述了C#編程獲取客戶端計(jì)算機(jī)硬件及系統(tǒng)信息功能。分享給大家供大家參考,具體如下:

這里使用C#獲取客戶端計(jì)算機(jī)硬件及系統(tǒng)信息 ,包括CPU、硬盤、IP、MAC地址、操作系統(tǒng)等。

1、項(xiàng)目引用System.Management庫(kù)。

2、創(chuàng)建HardwareHandler.cs類文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management;
namespace MyStudy.Utility
{
  /// <summary>
  /// 計(jì)算機(jī)硬件處理類
  /// </summary>
  public class HardwareHandler
  {
    public enum WMIPath
    {
      // 硬件
      Win32_Processor,     // CPU 處理器
      Win32_PhysicalMemory,  // 物理內(nèi)存條
      Win32_Keyboard,     // 鍵盤
      Win32_PointingDevice,  // 點(diǎn)輸入設(shè)備,包括鼠標(biāo)。
      Win32_FloppyDrive,    // 軟盤驅(qū)動(dòng)器
      Win32_DiskDrive,     // 硬盤驅(qū)動(dòng)器
      Win32_CDROMDrive,    // 光盤驅(qū)動(dòng)器
      Win32_BaseBoard,     // 主板
      Win32_BIOS,       // BIOS 芯片
      Win32_ParallelPort,   // 并口
      Win32_SerialPort,    // 串口
      Win32_SerialPortConfiguration, // 串口配置
      Win32_SoundDevice,    // 多媒體設(shè)置,一般指聲卡。
      Win32_SystemSlot,    // 主板插槽 (ISA & PCI & AGP)
      Win32_USBController,   // USB 控制器
      Win32_NetworkAdapter,  // 網(wǎng)絡(luò)適配器
      Win32_NetworkAdapterConfiguration, // 網(wǎng)絡(luò)適配器設(shè)置
      Win32_Printer,      // 打印機(jī)
      Win32_PrinterConfiguration, // 打印機(jī)設(shè)置
      Win32_PrintJob,     // 打印機(jī)任務(wù)
      Win32_TCPIPPrinterPort, // 打印機(jī)端口
      Win32_POTSModem,     // MODEM
      Win32_POTSModemToSerialPort, // MODEM 端口
      Win32_DesktopMonitor,  // 顯示器
      Win32_DisplayConfiguration, // 顯卡
      Win32_DisplayControllerConfiguration, // 顯卡設(shè)置
      Win32_VideoController, // 顯卡細(xì)節(jié)。
      Win32_VideoSettings,  // 顯卡支持的顯示模式。
      // 操作系統(tǒng)
      Win32_TimeZone,     // 時(shí)區(qū)
      Win32_SystemDriver,   // 驅(qū)動(dòng)程序
      Win32_DiskPartition,  // 磁盤分區(qū)
      Win32_LogicalDisk,   // 邏輯磁盤
      Win32_LogicalDiskToPartition,   // 邏輯磁盤所在分區(qū)及始末位置。
      Win32_LogicalMemoryConfiguration, // 邏輯內(nèi)存配置
      Win32_PageFile,     // 系統(tǒng)頁(yè)文件信息
      Win32_PageFileSetting, // 頁(yè)文件設(shè)置
      Win32_BootConfiguration, // 系統(tǒng)啟動(dòng)配置
      Win32_ComputerSystem,  // 計(jì)算機(jī)信息簡(jiǎn)要
      Win32_OperatingSystem, // 操作系統(tǒng)信息
      Win32_StartupCommand,  // 系統(tǒng)自動(dòng)啟動(dòng)程序
      Win32_Service,     // 系統(tǒng)安裝的服務(wù)
      Win32_Group,      // 系統(tǒng)管理組
      Win32_GroupUser,    // 系統(tǒng)組帳號(hào)
      Win32_UserAccount,   // 用戶帳號(hào)
      Win32_Process,     // 系統(tǒng)進(jìn)程
      Win32_Thread,      // 系統(tǒng)線程
      Win32_Share,      // 共享
      Win32_NetworkClient,  // 已安裝的網(wǎng)絡(luò)客戶端
      Win32_NetworkProtocol, // 已安裝的網(wǎng)絡(luò)協(xié)議
    }
    /// <summary>
    /// Cpu信息
    /// </summary>
    /// <returns></returns>
    public void CpuInfo()
    {
      try
      {
        ManagementClass mc = new ManagementClass(WMIPath.Win32_Processor.ToString());
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
          Console.WriteLine("CPU編號(hào):" + mo.Properties["ProcessorId"].Value);
          Console.WriteLine("CPU型號(hào):" + mo.Properties["Name"].Value);
          Console.WriteLine("CPU狀態(tài):" + mo.Properties["Status"].Value);
          Console.WriteLine("主機(jī)名稱:" + mo.Properties["SystemName"].Value);
        }
      }
      catch
      {
        Console.WriteLine("Erroe");
      }
    }
    /// <summary>
    /// 主板信息
    /// </summary>
    public void MainBoardInfo()
    {
      try
      {
        ManagementClass mc = new ManagementClass(WMIPath.Win32_BaseBoard.ToString());
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
          Console.WriteLine("主板ID:" + mo.Properties["SerialNumber"].Value);
          Console.WriteLine("制造商:" + mo.Properties["Manufacturer"].Value);
          Console.WriteLine("型號(hào):" + mo.Properties["Product"].Value);
          Console.WriteLine("版本:" + mo.Properties["Version"].Value);
        }
      }
      catch
      {
        Console.WriteLine("Erroe");
      }
    }
    /// <summary>
    /// 硬盤信息
    /// </summary>
    public void DiskDriveInfo()
    {
      try
      {
        ManagementClass mc = new ManagementClass(WMIPath.Win32_DiskDrive.ToString());
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
          Console.WriteLine("硬盤SN:" + mo.Properties["SerialNumber"].Value);
          Console.WriteLine("型號(hào):" + mo.Properties["Model"].Value);
          Console.WriteLine("大?。? + Convert.ToDouble(mo.Properties["Size"].Value) / (1024 * 1024 * 1024));
        }
      }
      catch
      {
        Console.WriteLine("Erroe");
      }
    }
    /// <summary>
    /// 網(wǎng)絡(luò)連接信息
    /// </summary>
    public void NetworkInfo()
    {
      try
      {
        ManagementClass mc = new ManagementClass(WMIPath.Win32_NetworkAdapterConfiguration.ToString());
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
          Console.WriteLine("MAC地址:" + mo.Properties["MACAddress"].Value);
          Console.WriteLine("IP地址:" + mo.Properties["IPAddress"].Value);
        }
      }
      catch
      {
        Console.WriteLine("Erroe");
      }
    }
    /// <summary>
    /// 操作系統(tǒng)信息
    /// </summary>
    public void OsInfo()
    {
      try
      {
        ManagementClass mc = new ManagementClass(WMIPath.Win32_OperatingSystem.ToString());
        ManagementObjectCollection moc = mc.GetInstances();
        foreach (ManagementObject mo in moc)
        {
          Console.WriteLine("操作系統(tǒng):" + mo.Properties["Name"].Value);
          Console.WriteLine("版本:" + mo.Properties["Version"].Value);
          Console.WriteLine("系統(tǒng)目錄:" + mo.Properties["SystemDirectory"].Value);
        }
      }
      catch
      {
        Console.WriteLine("Erroe");
      }
    }
  }
}

更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》、《WinForm控件用法總結(jié)》、《C#中XML文件操作技巧匯總》、《C#常見控件用法教程》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#數(shù)組操作技巧總結(jié)》及《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程

希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 深入了解c#多線程編程

    深入了解c#多線程編程

    這篇文章主要介紹了c#多線程編程的相關(guān)資料,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí)c# 多線程,感興趣的朋友可以了解下
    2020-08-08
  • C#實(shí)現(xiàn)金額轉(zhuǎn)換成中文大寫金額

    C#實(shí)現(xiàn)金額轉(zhuǎn)換成中文大寫金額

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)金額轉(zhuǎn)換成中文大寫金額,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • C#實(shí)現(xiàn)貪吃蛇小游戲

    C#實(shí)現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C#實(shí)現(xiàn)遠(yuǎn)程關(guān)閉計(jì)算機(jī)或重啟計(jì)算機(jī)的方法

    C#實(shí)現(xiàn)遠(yuǎn)程關(guān)閉計(jì)算機(jī)或重啟計(jì)算機(jī)的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)遠(yuǎn)程關(guān)閉計(jì)算機(jī)或重啟計(jì)算機(jī)的方法,涉及C#遠(yuǎn)程連接及系統(tǒng)命令的調(diào)用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • c#通過進(jìn)程調(diào)用cmd判斷登錄用戶權(quán)限代碼分享

    c#通過進(jìn)程調(diào)用cmd判斷登錄用戶權(quán)限代碼分享

    最近自己開發(fā)軟件需要讀取本地配置文件,因?yàn)榈卿浻脩舻臋?quán)限不夠會(huì)導(dǎo)致無(wú)法讀取文件進(jìn)而導(dǎo)致程序崩潰,查了一些解決方法,代碼分享如下
    2013-12-12
  • WinForm限制窗體不能移到屏幕外的方法

    WinForm限制窗體不能移到屏幕外的方法

    這篇文章主要介紹了WinForm限制窗體不能移到屏幕外的方法,實(shí)例分析了C#中WinForm窗體操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • C#簡(jiǎn)易人機(jī)對(duì)抗“石頭剪刀布”游戲的實(shí)現(xiàn)

    C#簡(jiǎn)易人機(jī)對(duì)抗“石頭剪刀布”游戲的實(shí)現(xiàn)

    本文主要介紹了C#簡(jiǎn)易人機(jī)對(duì)抗“石頭剪刀布”游戲的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 如何獲取C#中方法的執(zhí)行時(shí)間以及其代碼注入詳解

    如何獲取C#中方法的執(zhí)行時(shí)間以及其代碼注入詳解

    這篇文章主要給大家介紹了關(guān)于如何獲取C#中方法的執(zhí)行時(shí)間以及其代碼注入的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧
    2018-11-11
  • C#中Timer實(shí)現(xiàn)Tick使用精度的問題

    C#中Timer實(shí)現(xiàn)Tick使用精度的問題

    這篇文章主要介紹了C#中Timer實(shí)現(xiàn)Tick使用精度的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • C#中的ComboBox控件詳細(xì)使用方法

    C#中的ComboBox控件詳細(xì)使用方法

    這篇文章主要給大家介紹了關(guān)于C#中ComboBox控件詳細(xì)使用的相關(guān)資料,ComboBox控件是一個(gè)很容易使用出錯(cuò)的控件,在此將常用的操作寫下來,以備后用,需要的朋友可以參考下
    2023-09-09

最新評(píng)論