Heim >Backend-Entwicklung >C#.Net-Tutorial >Wie erhalte ich durch C#-Programmierung Informationen zur Computerhardware?

Wie erhalte ich durch C#-Programmierung Informationen zur Computerhardware?

黄舟
黄舟Original
2017-08-07 13:10:222127Durchsuche

Dieser Artikel stellt hauptsächlich die Methode der C#-Programmierung vor, um verschiedene Informationen zur Computerhardware zu erhalten, und analysiert die relevanten Bedienfähigkeiten und Vorsichtsmaßnahmen für C#, um Computer-CPU, Motherboard, Festplatte, BIOS-Nummer und andere Informationen in Form von Beispielen zu erhalten. Freunde, die es brauchen, können als Referenz

Das Beispiel in diesem Artikel beschreibt die Methode zum Abrufen verschiedener Computerhardwareinformationen durch C#-Programmierung. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

CPU-Nummer abrufen:


ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc.GetInstances();
string strID = null ;
foreach( ManagementObject mo in moc )
{
  strID = mo.Properties["ProcessorId"].Value.ToString();
  break;
}
textBox1.Text += "CPU ID:" + strID;

Zurück das Ergebnis:


电脑1:CPU ID:BFEBFBFF00000F27
电脑2:CPU ID:BFEBFBFF00000F27
电脑3:CPU ID:BFEBFBFF00000F29
电脑4:CPU ID:BFEBFBFF00000F29

Erhalten Sie die Motherboard-Nummer:


ManagementClass mc = new ManagementClass("Win32_BaseBoard");
ManagementObjectCollection moc = mc.GetInstances();
string strID = null ;
foreach( ManagementObject mo in moc )
{
  strID = mo.Properties["SerialNumber"].Value.ToString();
  break;
}
textBox1.Text += "主板 ID:" + strID;

Geben Sie das Ergebnis zurück:


电脑1:主板 ID:
电脑2:主板 ID:CN24401483
电脑3:主板 ID:AZF241001101
电脑4:主板 ID:

Erhalten Sie die Festplattennummer:


ManagementClass mc = new ManagementClass("Win32_PhysicalMedia");
//网上有提到,用Win32_DiskDrive,但是用Win32_DiskDrive获得的硬盘信息中并不包含SerialNumber属性。
ManagementObjectCollection moc = mc.GetInstances();
string strID = null ;
foreach( ManagementObject mo in moc )
{
  strID = mo.Properties["SerialNumber"].Value.ToString();
  break;
}
textBox1.Text += "硬盘 ID:" + strID;

Ergebnis zurückgeben:


电脑1:硬盘 ID:4833395344463658202020202020202020202020
电脑2:硬盘 ID:WD-WMAJD1092385
电脑3:硬盘 ID:4a353756354d5939202020202020202020202020
电脑4:硬盘 ID:0637J2FW508014

BIOS-Nummer abrufen:


ManagementClass mc = new ManagementClass("Win32_BIOS");
ManagementObjectCollection moc = mc.GetInstances();
string strID = null ;
foreach( ManagementObject mo in moc )
{
  strID = mo.Properties["SerialNumber"].Value.ToString();
  break;
}
textBox1.Text += "BIOS ID:" + strID;

Rückgabeergebnis:


电脑1:BIOS ID:
电脑2:BIOS ID:CN24401483
电脑3:BIOS ID:
电脑4:BIOS ID:

Zusammenfassung:

Aus den obigen Schritten ist ersichtlich, dass die CPUID abgerufen wird über Win32_Processor ist falsch oder das Feld Win32_Processor enthält keine Informationen zur CPU-Nummer.

Rufen Sie die Motherboard-Informationen über Win32_BaseBoard ab, aber nicht alle Motherboards haben Nummern, oder es ist nicht möglich, die Nummern aller System-Motherboards abzurufen.

Es sollte kein Problem sein, die Festplattennummer über Win32_PhysicalMedia zu erhalten. Online heißt es jedoch, dass es über Win32_DiskDrive abgerufen werden kann. Tatsächlich enthalten die erhaltenen Informationen überhaupt keine SerialNumber.

Das Abrufen von BIOS-Informationen über Win32_BIOS ist im Grunde dasselbe wie das Abrufen von Motherboard-Informationen. Das heißt: Nicht alle Motherboard-BIOS-Informationen haben eine Nummer.

Darüber hinaus können Sie die über die oben genannten Felder erhaltenen Informationen ausgeben und alle Informationsattribute und entsprechenden Werte einzeln anzeigen. Der Code lautet wie folgt:


ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc.GetInstances();
foreach( ManagementObject mo in moc )
{
 textBox1.Text += "\r\n============CUP信息===========";
 foreach (PropertyData pd in mo.Properties)
 {
   textBox1.Text += "\r\n" + pd.Name + "\t";
   if (pd.Value != null)
   {
     textBox1.Text += pd.Value.ToString();
   }
 }
 textBox1.Text += "\r\n\r\n=======================";
}

Das obige ist der detaillierte Inhalt vonWie erhalte ich durch C#-Programmierung Informationen zur Computerhardware?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn