分享

C#获取CPU的序列号、硬盘序列号、网卡序列号等系统相关信息

 *我爱阳光* 2010-09-24

测试环境:Visual Studio 2008 (此环境下通过测试)

方法一:

//获取cpu信息
public static void GetCpuIndex()
{
            string _cpuInfo = "";
            ManagementClass cimobject = new ManagementClass("Win32_Processor");
            ManagementObjectCollection moc = cimobject.GetInstances();
            foreach (ManagementObject mo in moc)
            {
                _cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
            }
            return _cpuInfo;
}

// 得到硬盘序列号
public static void GetHDIndex()
{
            string _HDInfo = "";
            ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
            ManagementObjectCollection moc1 = cimobject1.GetInstances();
            foreach (ManagementObject mo in moc1)
            {
                _HDInfo = (string)mo.Properties["Model"].Value;


            }
            retrun _HDInfo;
}

//获取网卡硬件地址
public static void GetMacAddress()
{
            string _MacAddress = "";
            ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection moc2 = mc.GetInstances();
            foreach (ManagementObject mo in moc2)
            {
                if ((bool)mo["IPEnabled"] == true)
                    MacAddress = mo["MacAddress"].ToString();
                mo.Dispose();
            }
           
            return _MacAddress;
}

方法二:主要是通过WMI方法获取系统的相关信息。

具体有关常用WMI的使用列表,本人早已经整理到蒂强网络中了请访问:

http://www./article/html/1559.html

//获取CPU的相关信息
                    ManagementObjectSearcher searcher02 = new ManagementObjectSearcher("select * from Win32_Processor");
                    string strCPUN = "";
                    string strCPUDp = "";
                    string strCPUCCS = "";
                    string strCPUMCS = "";
                    string strCPUMf = "";
                    string strCPUEC = "";
                    string strCPUFy = "";
                    string strCPUL2CS = "";
                    string strCPUNLP = "";
                    string strCPUPId = "";
                    string strCPUPLP = "";

                    foreach (ManagementObject Pror in searcher02.Get())  //调用ManagementObject类GET方法

//获取CPU的信息
                    {
                        strCPUN = Pror["Name"].ToString().Trim(); //CPU的规格
                        strCPUDp = Pror["Description"].ToString().Trim(); //CPU的版本
                        strCPUCCS = Pror["CurrentClockSpeed"].ToString().Trim(); //CPU的主频
                        strCPUMCS = Pror["MaxClockSpeed"].ToString().Trim(); //CPU的最大频率(高频)
                        strCPUMf = Pror["Manufacturer"].ToString().Trim(); //CPU的厂商
                        strCPUEC = Pror["ExtClock"].ToString().Trim(); //CPU的前端总线
                        strCPUFy = Pror["NumberOfCores"].ToString().Trim(); //CPU的核心数
                        strCPUL2CS = Pror["L2CacheSize"].ToString().Trim(); //CPU的二级缓存
                        strCPUNLP = Pror["NumberOfLogicalProcessors"].ToString().Trim(); //CPU逻辑核心个数
                        strCPUPId = Pror["ProcessorId"].ToString().Trim(); //CPU序列号
                        strCPUPLP = Pror["LoadPercentage"].ToString().Trim(); //CPU使用率
                        break;
                    }

                    //此处本人用Label显示了cpu的相关信息,这样显得更直观一些!
                    label1.Text = strCPUN;//显示CPU的规格   
                    label2.Text = strCPUDp;//显示CPU的版本
                    label3.Text = strCPUCCS + " " + "MHz";//显示CPU的主频
                    label4.Text = strCPUMCS + " " + "MHz";//显示CPU的最高频率
                    label5.Text = strCPUMf;//显示CPU的厂商
                    label6.Text = strCPUL2CS + " " + "KB";//显示CPU的二级缓存
                    label7.Text = strCPUEC + " " + "MHz";//显示CPU的前端总线
                    label8.Text = strCPUFy + " " + "个";//显示CPU的核心数
                    label9.Text = strCPUNLP + " " + "个";//显示CPU的逻辑处理器数
                    label10.Text = strCPUPId;//显示CPU的序列号
                    label11.Text = strCPUPLP + " " + "%";//显示CPU使用率
                  
                }

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多