C# 硬件码 获取电脑配置信息

class ActiveX
    {
        public static string hardCode()
        {
            string temp = CpuID() + "_" + DiskID() + "_" + TotalPhysicalMemory() + "_" + SystemType() + "_" + MacAddress() ;
            temp = temp.ToUpper();
            string result = Md5Create.getMd5Hash(temp);
            return result;
        }

        private static string CpuID()
        {
            string cpuID = "";

            ManagementClass mc = null;
            ManagementObjectCollection moc = null;
            try
            {
                mc = new ManagementClass("Win32_Processor");
                moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    cpuID = mo.Properties["ProcessorId"].Value.ToString();
                }
            }
            catch (Exception ex)
            {
                LogWrite.Write("ActiveX.CpuID:"+ex.Message);
                cpuID = "unknow";
            }
            finally
            {
                moc = null;
                mc = null;
            }
            return cpuID;
        }

        private static string MacAddress()
        {
            string macAddress = "";

            ManagementClass mc = null;
            ManagementObjectCollection moc = null;
            try
            {
                mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
                moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    if ((bool)mo["IPEnabled"] == true)
                    {
                        macAddress = mo["MacAddress"].ToString();
                        return macAddress;
                    }
                }
            }
            catch (Exception ex)
            {
                LogWrite.Write("ActiveX.MacAddress:" + ex.Message);
                macAddress = "unknow";
            }
            finally
            {
                moc = null;
                mc = null;
            }

            return macAddress;
        }

        private static string DiskID()
        {
            string diskID = "";

            ManagementClass mc = null;
            ManagementObjectCollection moc = null;
            try
            {
                mc = new ManagementClass("Win32_DiskDrive");
                moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    diskID = mo.Properties["Model"].Value.ToString();
                }
            }
            catch (Exception ex)
            {
                LogWrite.Write("ActiveX.DiskID:" + ex.Message);
                diskID = "unknow";
            }
            finally
            {
                moc = null;
                mc = null;
            }
            return diskID;
        }

        private static string SystemType()
        {
            string systemType = "";

            ManagementClass mc = null;
            ManagementObjectCollection moc = null;
            try
            {
                mc = new ManagementClass("Win32_ComputerSystem");
                moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    systemType = mo["SystemType"].ToString();
                }
            }
            catch (Exception ex)
            {
                LogWrite.Write("ActiveX.SystemType:" + ex.Message);
                systemType = "unknow";
            }
            finally
            {
                moc = null;
                mc = null;
            }

            return systemType;
        }

        private static string TotalPhysicalMemory()
        {
            string totalPhysicalMemory = "";

            ManagementClass mc = null;
            ManagementObjectCollection moc = null;
            try
            {
                mc = new ManagementClass("Win32_ComputerSystem");
                moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    totalPhysicalMemory = mo["TotalPhysicalMemory"].ToString();
                }
            }
            catch (Exception ex)
            {
                LogWrite.Write("ActiveX.TotalPhysicalMemory:" + ex.Message);
                totalPhysicalMemory = "unknow";
            }
            finally
            {
                moc = null;
                mc = null;
            }

            return totalPhysicalMemory;
        }
    }

转载于:https://www.cnblogs.com/qinhaijun/archive/2011/08/26/2154278.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值