歡迎您光臨本站 註冊首頁

C#如何獲取計算機信息

←手機掃碼閱讀     kyec555 @ 2020-07-06 , reply:0

本文實例為大家分享了C#獲取計算機信息的具體代碼,供大家參考,具體內容如下

  using System;  using System.Configuration;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using System.Threading.Tasks;  using System.Management;        namespace test  {    /// <summary>    /// Computer informercial    /// </summary>    class Computer    {      public string CpuID;      public string MacAddress;      public string DiskID;      public string IpAddress;      public string LoginUserName;      public string ComputerName;      public string SystemType;      public string TotalPhysicalMemory; //單位:M       private static Computer _instance;            public static Computer Instance()      {        if (_instance == null)          _instance = new Computer();        return _instance;      }         public Computer()      {        CpuID = GetCpuID();        MacAddress = GetMacAddress();        DiskID = GetDiskID();        IpAddress = GetIPAddress();        LoginUserName = GetUserName();        SystemType = GetSystemType();        TotalPhysicalMemory = GetTotalPhysicalMemory();        ComputerName = GetComputerName();      }      /// <summary>      /// 獲取CPU ID      /// </summary>      /// <returns></returns>      private string GetCpuID()      {        try        {          //獲取CPU序列號代碼           string cpuInfo = "";//cpu序列號          ManagementClass mc = new ManagementClass("Win32_Processor");          ManagementObjectCollection moc = mc.GetInstances();          foreach(ManagementObject mo in moc)          {            cpuInfo = mo.Properties["ProcessorId"].Value.ToString();          }          moc = null;          mc = null;             return cpuInfo;           }        catch        {          return "unknow";        }        finally        {           }      }      /// <summary>      /// 獲取Mac 地址      /// </summary>      /// <returns></returns>      private string GetMacAddress()      {                try        {          //獲取網卡硬件地址           string mac = "";          ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");          ManagementObjectCollection moc = mc.GetInstances();          foreach(ManagementObject mo in moc)          {            if((bool)mo["IPEnabled"]==true)            {              mac = mo["MacAddress"].ToString();              break;            }          }          moc = null;          mc = null;          return mac;           }        catch        {          return "unknow";        }        finally        {           }      }      /// <summary>      /// 獲取 ip地址      /// </summary>      /// <returns></returns>      private string GetIPAddress()      {        try        {          //獲取IP地址           string st = "";          ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");          ManagementObjectCollection moc = mc.GetInstances();          foreach (ManagementObject mo in moc)          {            if ((bool)mo["IPEnabled"] == true)            {              //st=mo["IpAddress"].ToString();               System.Array ar;              ar = (System.Array)(mo.Properties["IpAddress"].Value);              st = ar.GetValue(0).ToString();              break;            }          }          moc = null;          mc = null;          return st;        }        catch        {          return "unknow";        }        finally        {           }      }      /// <summary>      /// 獲取硬盤ID      /// </summary>      /// <returns></returns>      private string GetDiskID()      {        try        {          //獲取硬盤ID           String HDid = "";          ManagementClass mc = new ManagementClass("Win32_DiskDrive");          ManagementObjectCollection moc = mc.GetInstances();          foreach (ManagementObject mo in moc)          {            HDid = (string)mo.Properties["Model"].Value;          }          moc = null;          mc = null;          return HDid;        }        catch        {          return "unknow";        }        finally        {        }      }      /// <summary>      /// 用戶名       /// </summary>      /// <returns></returns>      private string GetComputerName()      {        try        {          return System.Environment.GetEnvironmentVariable("ComputerName");        }        catch        {          return "unknow";        }        finally        {        }      }      /// <summary>      /// 物理內存      /// </summary>      /// <returns></returns>      private string GetTotalPhysicalMemory()      {        try        {             string st = "";          ManagementClass mc = new ManagementClass("Win32_ComputerSystem");          ManagementObjectCollection moc = mc.GetInstances();          foreach (ManagementObject mo in moc)          {               st = mo["TotalPhysicalMemory"].ToString();             }          moc = null;          mc = null;          return st;        }        catch        {          return "unknow";        }        finally        {        }      }      /// <summary>      /// PC類型       /// </summary>      /// <returns></returns>      private string GetSystemType()      {        try        {          string st = "";          ManagementClass mc = new ManagementClass("Win32_ComputerSystem");          ManagementObjectCollection moc = mc.GetInstances();          foreach (ManagementObject mo in moc)          {               st = mo["SystemType"].ToString();             }          moc = null;          mc = null;          return st;        }        catch        {          return "unknow";        }        finally        {        }      }      /// <summary>      /// 操作系統的登錄用戶名       /// </summary>      /// <returns></returns>      private string GetUserName()      {        try        {          string st = "";          ManagementClass mc = new ManagementClass("Win32_ComputerSystem");          ManagementObjectCollection moc = mc.GetInstances();          foreach (ManagementObject mo in moc)          {               st = mo["UserName"].ToString();             }          moc = null;          mc = null;          return st;        }        catch        {          return "unknow";        }        finally        {        }      }    }  }

 

                                                       

   


[kyec555 ] C#如何獲取計算機信息已經有256次圍觀

http://coctec.com/docs/c/language/show-post-241486.html