学习啦 > 学习电脑 > 电脑硬件知识 > 硬件知识 > c语言怎么获取硬件信息

c语言怎么获取硬件信息

时间: 捷锋774 分享

c语言怎么获取硬件信息

学习啦在线学习网   对于程序员来讲,使用C语言再正常不过了,那么,你们知道C语音应该怎么获取它的硬件信息呢?下面是学习啦小编带来的关于c语言怎么获取硬件信息的内容,欢迎阅读!

  c语言怎么获取硬件信息?

  下面是C语言获取硬件信息的代码,可能比较长,请网友们细心查看

学习啦在线学习网   这个需要相关的库以及API。

  给你一个获取cpu信息的函数:

  DWORD MyCPUSpeed()

  {

  BSTR bstrMyCpuName=NULL;

  BSTR bstrMyPropName = NULL;

  VARIANT pVal;

  char szText[256];

  int nCpuNum=0;

学习啦在线学习网   DWORD dwCpuSpeed=0;

  IWbemClassObject *pCpuInst=NULL;

学习啦在线学习网   IWbemQualifierSet* pQualSet = NULL;

学习啦在线学习网   bstrMyPropName = SysAllocString(L"CurrentClockSpeed");

  if(bstrMyPropName == NULL)

  {

  return dwCpuSpeed;

  }

  while(1)

  {

  memset(szText,0,sizeof(szText));

  sprintf(szText,"Win32_Processor.DeviceID=\"CPU%d\"", nCpuNum);

学习啦在线学习网   bstrMyCpuName = _bstr_t(szText);

  if(bstrMyCpuName == NULL)

  {

  break;

  }

  if(pSvc->GetObject(bstrMyCpuName, 0L, NULL, &pCpuInst, NULL) != S_OK)

  {

  break;

  }

学习啦在线学习网   if(pCpuInst->Get(bstrMyPropName, 0L, &pVal, NULL, NULL) == S_OK)

  {

  nCpuNum++;

  dwCpuSpeed += pVal.lVal;

  }

  VariantClear(&pVal);

  SysFreeString(bstrMyCpuName);

  bstrMyCpuName = NULL;

  }

  if(bstrMyPropName != NULL)

  {

  SysFreeString(bstrMyPropName);

学习啦在线学习网   bstrMyPropName = NULL;

  }

学习啦在线学习网   if(bstrMyCpuName != NULL)

  {

  SysFreeString(bstrMyCpuName);

  bstrMyCpuName = NULL;

  }

  memset(szText,0,sizeof(szText));

  sprintf(szText, "CPU个数: %d, CPU频率: %ld Mhz", nCpuNum, dwCpuSpeed);

学习啦在线学习网   cout<<"------------------------"<

  return dwCpuSpeed;

  }

学习啦在线学习网   以上就是C语音怎么查看硬件信息的代码了

741117