• C#获取本地计算机名,IP,MAC地址,硬盘ID


    using System;
    using System.Data;
    using System.Configuration;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
    using System.Management;

    /// <summary>
    ///Computer 的摘要说明
    /// </summary>
    public 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();
        }
        
    public 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
            {
            }

        }
        
    public 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
            {
            }

        }
        
    public 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
            {
            }

        }

        
    public 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> 
        public 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
            {
            }

        }


        
    /// <summary> 
        
    /// PC类型 
        
    /// </summary> 
        
    /// <returns></returns> 
        public 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> 
        public 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> 
        
    ///  
        
    /// </summary> 
        
    /// <returns></returns> 
        public string GetComputerName()
        {
            
    try
            {
                
    return System.Environment.GetEnvironmentVariable("ComputerName");
            }
            
    catch
            {
                
    return "unknow";
            }
            
    finally
            {
            }
        }



    }
  • 相关阅读:
    Codeforces Round #251 (Div. 2) A
    topcoder SRM 623 DIV2 CatAndRat
    topcoder SRM 623 DIV2 CatchTheBeatEasy
    topcoder SRM 622 DIV2 FibonacciDiv2
    topcoder SRM 622 DIV2 BoxesDiv2
    Leetcode Linked List Cycle II
    leetcode Linked List Cycle
    Leetcode Search Insert Position
    关于vim插件
    Codeforces Round #248 (Div. 2) B. Kuriyama Mirai's Stones
  • 原文地址:https://www.cnblogs.com/qixuejia/p/1933442.html
Copyright © 2020-2023  润新知