如何在C#项目中获取硬件参数?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。创新互联坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供成都网站建设、网站设计、微信公众号开发、电商网站开发,微信小程序开发,软件按需网站策划等一站式互联网企业服务。C# 获取硬件参数的实现方法
示例代码:
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"); }
看完上述内容,你们掌握如何在C#项目中获取硬件参数的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联成都网站制作公司行业资讯频道,感谢各位的阅读!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。