>  기사  >  백엔드 개발  >  C# 프로그래밍을 통해 컴퓨터 하드웨어 정보를 얻는 방법은 무엇입니까?

C# 프로그래밍을 통해 컴퓨터 하드웨어 정보를 얻는 방법은 무엇입니까?

黄舟
黄舟원래의
2017-08-07 13:10:222032검색

이 글에서는 주로 다양한 컴퓨터 하드웨어 정보를 얻기 위한 C# 프로그래밍 방법을 소개합니다. 컴퓨터 CPU, 마더보드, 하드 디스크, BIOS 번호 및 기타 정보를 얻기 위한 C# 관련 작동 기술과 주의 사항을 예제 형식으로 분석합니다. 다음을 참조하세요.

이 문서의 예제에서는 C# 프로그래밍을 사용하여 다양한 컴퓨터 하드웨어 정보를 얻는 방법을 설명합니다. 참조를 위해 모든 사람과 공유하세요. 세부 정보는 다음과 같습니다.

CPU 번호 가져오기:


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;

반환 결과:


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

마더보드 번호 가져오기:


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;

결과 반환:


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

하드 드라이브 번호 가져오기:


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;

결과 반환:


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

BIOS 번호 가져오기:


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;

결과 반환 :


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

요약:

위 단계에서 Win32_Processor를 통해 CPUID를 얻는 것이 잘못되었거나 Win32_Processor 필드에 CPU 번호 정보가 포함되어 있지 않은 것을 확인할 수 있습니다.

Win32_BaseBoard를 통해 마더보드 정보를 가져오지만 모든 마더보드에 번호가 있거나 모든 시스템 마더보드의 번호를 얻을 수는 없습니다.

Win32_PhysicalMedia를 통해 하드 디스크 번호를 얻는 데 문제가 없을 것입니다. 하지만 온라인에서는 Win32_DiskDrive를 통해 얻을 수 있다고 합니다. 실제로 얻은 정보에는 SerialNumber가 전혀 포함되어 있지 않습니다.

Win32_BIOS를 통해 BIOS 정보를 얻는 것은 기본적으로 마더보드 정보를 얻는 것과 같습니다. 즉, 모든 마더보드 BIOS 정보에 숫자가 있는 것은 아닙니다.

또한 위의 각 필드를 통해 얻은 정보를 출력하고 모든 정보 속성과 해당 값을 하나씩 볼 수 있습니다. 코드는 다음과 같습니다:


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=======================";
}

위 내용은 C# 프로그래밍을 통해 컴퓨터 하드웨어 정보를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.