`
duchq044
  • 浏览: 29185 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

c#中获取cpu序列号、网卡mac地址、ip地址、硬盘序列号、登录用户名、pc类型、计算机名称、物理内存 【转载】

    博客分类:
  • C#
阅读更多
using System;
using System.Management;
namespace SHJ
{
    ///
    /// Computer Information
    ///
    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;
        }
        protected Computer()
        {
            CpuID = GetCpuID();
            MacAddress = GetMacAddress();
            DiskID = GetDiskID();
            IpAddress = GetIPAddress();
            LoginUserName = GetUserName();
            SystemType = GetSystemType();
            TotalPhysicalMemory = GetTotalPhysicalMemory();
            ComputerName = GetComputerName();
        }
        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
            {
            }

        }
        string GetMacAddress()
        {
            try
            {
                //获取网卡Mac地址
                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
            {
            }

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

        }

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

        }

        ///
        /// 操作系统的登录用户名
        ///
        ///
        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
            {
            }

        }


        ///
        /// PC类型
        ///
        ///
        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
            {
            }

        }

        ///
        /// 物理内存
        ///
        ///
        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
            {
            }
        }
        ///
        /// 计算机名称
        ///
        ///
        string GetComputerName()
        {
            try
            {
                return System.Environment.GetEnvironmentVariable("ComputerName");
            }
            catch
            {
                return "unknow";
            }
            finally
            {
            }
        }


    }
}
分享到:
评论

相关推荐

    Linux和WindowsC语言获取(CPU序列号、硬盘序列号、网卡信息、IP地址、MAC地址、网卡是否插入网线)硬件信息源码

    本文将详细讨论如何使用C语言在Linux和Windows操作系统中获取CPU序列号、硬盘序列号、网卡信息(包括网卡名称、IP地址、MAC地址以及网络连接状态)。 首先,我们来探讨CPU序列号的获取。在Windows系统中,可以使用...

    c#中获取服务器IP

    本篇内容详细介绍了如何在C#中获取服务器或客户端的IP地址,以及如何获取CPU序列号、硬盘ID和网卡MAC地址等信息。这些技术点对于开发基于网络的应用程序非常有用,能够帮助开发者更好地管理和监控系统的运行状态。

    C#获得PC网卡号、CPU号、硬盘号等信息

    以下将详细介绍如何使用C#获取网卡号(MAC地址)、CPU序列号、硬盘序列号以及IP地址和登录用户名的相关知识。 1. **获取网卡号(MAC地址)** MAC地址是物理网络接口控制器(网卡)的唯一标识。在C#中,可以使用`...

    根据电脑硬件信息生成唯一的序列号,绝对可用

    根据电脑硬件信息生成唯一的序列号,不依赖于任何第三方组件,包括:硬盘的卷标号、硬盘ID、CPU的序列号、网卡硬件地址、IP地址、登录用户名、计算机名、PC类型、物理内存。

    【源码共享】C#+ASP.NET中在客户端取硬盘序列号和网卡MAC地址的源码

    ### C#与ASP.NET中获取客户端硬盘序列号和网卡MAC地址 在现代软件开发中,尤其是涉及到系统安全、授权管理等场景时,获取客户端硬件信息(如硬盘序列号、网卡MAC地址)的需求十分常见。本文将详细介绍如何在C#结合...

    原创 C#获取计算机各种硬件设备的序列号

    本文将详细讲解如何使用C#编程语言来获取计算机的各种硬件设备,包括CPU、硬盘(通常指的是硬盘接口,如SATA或NVMe设备的ID)以及网卡的序列号。 首先,我们要了解什么是序列号。序列号是一种唯一标识硬件设备的...

    取得CPU,硬盘序列号,注册码示例源程序

    在IT领域,获取系统硬件信息是常见的需求,例如CPU序列号、硬盘序列号以及网络接口卡(网卡)的MAC地址。这些信息在软件激活、系统安全检测、硬件故障排查等方面都有重要作用。以下是对这些概念的详细解释: 1. **...

    C#利用网卡来绑定软件

    "C#利用网卡来绑定软件"是一种常见的技术手段,它通过获取计算机的网络适配器(网卡)的物理地址(MAC地址)来实现软件的唯一绑定。这种方法基于每个网卡都有一个全球唯一的MAC地址这一特性,可以确保软件只能在特定...

    C# 硬件ID获取

    在IT领域,硬件ID通常指的是计算机的唯一标识符,它由硬件组件如硬盘、主板、网卡等的物理特征组合而成。在C#编程中,获取硬件ID可以帮助开发者实现一些特定的功能,例如软件授权、设备追踪或者系统识别。下面将详细...

    获取电脑硬件的详细信息,与注册有关,物理地址,序列号

    3. 网卡MAC地址:MAC(Media Access Control)地址是网卡的物理地址,用于局域网内的设备识别。它是一个48位的二进制数,通常分为6个字节,用冒号或破折号分隔。获取MAC地址可以使用命令行(如Windows的`getmac`,...

    C#获得MAC地址(网卡序列号)的实现代码

    在C#编程环境中,获取计算机的MAC(Media Access Control)地址,也就是网卡序列号,是常见的需求之一。MAC地址是网络设备的物理地址,用于在网络中唯一标识一个设备。以下将详细介绍C#中获取MAC地址的实现原理及...

    获取系统硬件信息

    - **网卡信息**:通过查询`Win32_NetworkAdapterConfiguration`类,可以获取网卡的MAC地址、IP地址、子网掩码等网络配置信息。 - **操作系统信息**:利用`OperatingSystem`类可以获取OS名称、版本、架构等信息。 ...

    C#读取硬件信息

    在现代软件开发过程中,有时候我们需要获取运行环境中的硬件信息,比如CPU序列号、硬盘ID以及网卡的MAC地址等,这些信息对于系统监控、设备识别或者安全验证等方面具有重要意义。本文将详细介绍如何使用C#来读取这些...

    C#获取PC信息

    对于网卡信息,我们可以查询Win32_NetworkAdapterConfiguration类,获取每个网络适配器的详细信息,如IP地址、MAC地址、DNS服务器等。通过循环遍历此类的所有实例,可以列出所有连接的网络设备及其配置。 硬盘信息...

    获取电脑硬件唯一编号

    获取电脑硬件信息:用户操作系统、IE浏览器版本号、内存、CPU、硬盘编号、网卡Mac地址、cpu编号、主板编号、IP地址

    C#获取本机硬件信息

    在开发过程中,有时候我们需要获取计算机的基本硬件信息,比如CPU序列号、硬盘型号以及网卡的MAC地址等。这些信息对于系统管理、设备识别甚至是某些安全验证场合都非常有用。本文将详细介绍如何使用C#语言通过`...

    C#读取计算机硬件信息

    根据给定的信息,我们可以...以上介绍了如何使用C#来读取计算机的硬件信息,包括CPU信息、硬盘序列号和MAC地址等。这些知识对于开发人员来说是非常实用的,能够帮助他们在开发过程中更好地理解和处理与硬件相关的任务。

    C#如何获取计算机信息

    在C#编程中,获取计算机信息是常见的任务,这包括CPU信息、MAC地址、硬盘ID、IP地址、登录用户名、计算机名、系统类型以及总物理内存等。以下将详细介绍如何使用C#实现这些功能。 首先,为了实现这些功能,我们需要...

    mscomm使用指南 c#版本

    - **获取以太网卡的MAC地址**:在C#中,可以使用System.Net.NetworkInformation类的NetworkInterface类获取本地机器的MAC地址。 - **以太网数据帧的监听与分析**:可以使用第三方库,如Wireshark或自定义程序,...

Global site tag (gtag.js) - Google Analytics