C# 获取硬件参数的实现方法
示例代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
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" ); } |
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/lan_liang/article/details/52554464