zoukankan      html  css  js  c++  java
  • C#获取硬件序列号

    public class GetInfo
        {
            /// <summary>
            /// 获取硬盘的序列号
            /// </summary>
            /// <returns></returns>
            public static string GetDiskID()
            {
                String HDid = string.Empty;
                ManagementClass cimobject = new ManagementClass("Win32_DiskDrive");
                ManagementObjectCollection moc = cimobject.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    if (HDid == string.Empty)
                    {
                        HDid = (string)mo.Properties["Model"].Value;
                        break;
                    }
                }
                return HDid;
            }
            /// <summary>
            /// 获取磁盘分区信息
            /// </summary>
            /// <param name="strDriveLetter"></param>
            /// <returns></returns>
            public static string GetVolumeSerial(string strDriveLetter)
            {
                if (strDriveLetter == "" || strDriveLetter == null)
                {
                    strDriveLetter = "C:";
                }
                ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + strDriveLetter + "\"");
                disk.Get();
                Debug.WriteLine("FreeSpace: " + disk["FreeSpace"].ToString());
                return disk["VolumeSerialNumber"].ToString();
            }
            /// <summary>
            /// 获取网卡地址
            /// </summary>
            /// <returns></returns>
            public static string GetMACAddress()
            {
                ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
                ManagementObjectCollection moc = mc.GetInstances();
                string MACAddress = String.Empty;
                foreach (ManagementObject mo in moc)
                {
                    if (mo["MacAddress"] != null)
                    {
                        Debug.WriteLine("Network Adapter Description: " + mo["Description"].ToString() + "-" + mo["MacAddress"].ToString());
                    }
                    if (MACAddress == String.Empty)
                    {
                        if ((bool)mo["IPEnabled"] == true)
                        {
                            MACAddress = mo["MacAddress"].ToString();
                        }
                    }
                    mo.Dispose();
                }
                MACAddress = MACAddress.Replace(":", "");
                return MACAddress;
            }
            /// <summary>
            /// 获取CPU序列号
            /// </summary>
            /// <returns></returns>
            public static string GetCPUId()
            {
                string cpuInfo = String.Empty;
                string temp = String.Empty;
                ManagementClass mc = new ManagementClass("Win32_Processor");
                ManagementObjectCollection moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    Debug.WriteLine("Processor Caption: " + mo.Properties["Caption"].Value.ToString());
                    Debug.WriteLine("Processor MaxClockSpeed: " + mo.Properties["MaxClockSpeed"].Value.ToString());
                    if (cpuInfo == String.Empty)
                    {
                        cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
                    }
                }
                return cpuInfo;
            }

        }

    QQ:67042248

    天之道,利而不害;圣人之道,为而不争.

  • 相关阅读:
    ICE框架之Slice2CSharp映射---接口的映射
    ICE框架之Sclice2CSharp映射---结构的映射
    ICE框架之Sclice2CSharp映射---异常的处理
    ICE框架之Slice2CSharp映射---标识符、模块、内置类型的映射
    关于clientHeight、offsetHeight、scrollHeight[转]
    GridView中设置日期格式不起作用的解决方法
    提供 ice分布式程序设计中文版
    更换网卡后给网卡分配IP不成功的解决方法
    ICE框架之Slice2CSharp映射---字典的映射
    ICE框架之Slice2CSharp映射---异常的映射
  • 原文地址:https://www.cnblogs.com/kk1230/p/1609507.html
Copyright © 2011-2022 走看看