C# Some methods of obtaining hardware parameters

黄舟
Release: 2017-02-28 11:23:27
Original
1409 people have browsed it

C# Some methods of obtaining hardware parameters

private static string GetIdentifier(string wmiClass, string wmiProperty, string wmiMustBeTrue)
        {
            string result = "";
            System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
            System.Management.ManagementObjectCollection moc = mc.GetInstances();
            foreach (System.Management.ManagementObject mo in moc)
            {
                if (mo[wmiMustBeTrue].ToString() == "True")
                {
                    //Only get the first one
                    if (result == "")
                    {
                        try
                        {
                            result = mo[wmiProperty].ToString();
                            break;
                        }
                        catch
                        {
                        }
                    }
                }
            }
            return result;
        }


        private static string GetIdentifier(string wmiClass, string wmiProperty)
        {
            string result = "";
            System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
            System.Management.ManagementObjectCollection moc = mc.GetInstances();
            foreach (System.Management.ManagementObject mo in moc)
            {
                //Only get the first one
                if (result == "")
                {
                    try
                    {
                        result = mo[wmiProperty].ToString();
                        break;
                    }
                    catch
                    {
                    }
                }
            }
            return result;
        }






// cpu id 
GetIdentifier("Win32_Processor", "UniqueId");


//processor id
GetIdentifier("Win32_Processor", "ProcessorId");


//processor name
GetIdentifier("Win32_Processor", "Name");




//Manufacturer
GetIdentifier("Win32_Processor", "Manufacturer");




//BIOS Identifier
        private static string GetBiosId()
        {
            return GetIdentifier("Win32_BIOS", "Manufacturer")
            + GetIdentifier("Win32_BIOS", "SMBIOSBIOSVersion")
            + GetIdentifier("Win32_BIOS", "IdentificationCode")
            + GetIdentifier("Win32_BIOS", "SerialNumber")
            + GetIdentifier("Win32_BIOS", "ReleaseDate")
            + GetIdentifier("Win32_BIOS", "Version");
        }
        //Main physical hard drive ID
        private static string GetDiskId()
        {
            return GetIdentifier("Win32_DiskDrive", "Model")
            + GetIdentifier("Win32_DiskDrive", "Manufacturer")
            + GetIdentifier("Win32_DiskDrive", "Signature")
            + GetIdentifier("Win32_DiskDrive", "TotalHeads");
        }
        //Motherboard ID
        private static string GetBaseId()
        {
            return GetIdentifier("Win32_BaseBoard", "Model")
            + GetIdentifier("Win32_BaseBoard", "Manufacturer")
            + GetIdentifier("Win32_BaseBoard", "Name")
            + GetIdentifier("Win32_BaseBoard", "SerialNumber");
        }
        //Primary video controller ID
        private static string GetVideoId()
        {
            return GetIdentifier("Win32_VideoController", "DriverVersion")
            + GetIdentifier("Win32_VideoController", "Name");
        }
        //First enabled network card ID
        private static string GetMacId()
        {
            return GetIdentifier("Win32_NetworkAdapterConfiguration", "MACAddress", "IPEnabled");
        }
Copy after login

The above is the content of some methods of obtaining hardware parameters in C#. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!


Related labels:
c#
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template