C语言检测电脑CPU温度


使用windows提供的API实现的CPU温度检测,显示在控制台上。使用VS2017版本开发。
资源截图
代码片段和文件信息
// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//

#include “stdafx.h“


#define _WIN32_DCOM
#include 
using namespace std;
#include 
#include 

# pragma comment(lib “wbemuuid.lib“)

int main(int argc char **argv)
{
CoInitializeEx(0 COINIT_MULTITHREADED);
try{
if (SUCCEEDED(CoInitializeSecurity(NULL -1 NULL NULL RPC_C_AUTHN_LEVEL_DEFAULT RPC_C_IMP_LEVEL_IMPERSONATE NULL EOAC_NONE NULL))){
IWbemLocator *pLoc = NULL;
if (SUCCEEDED(CoCreateInstance(CLSID_WbemLocator 0 CLSCTX_INPROC_SERVER IID_IWbemLocator (LPVOID *)&pLoc))){
IWbemServices *pSvc = NULL;
if (SUCCEEDED(pLoc->ConnectServer(_bstr_t(L“ROOT\WMI“) NULL NULL 0 NULL 0 0 &pSvc))){
if (SUCCEEDED(CoSetProxyBlanket(pSvc RPC_C_AUTHN_WINNT RPC_C_AUTHZ_NONE NULL RPC_C_AUTHN_LEVEL_CALL RPC_C_IMP_LEVEL_IMPERSONATE NULL EOAC_NONE))){
IEnumWbemClassobject* pEnumerator = NULL;
if (SUCCEEDED(pSvc->ExecQuery(bstr_t(“WQL“) bstr_t(“SELECT * FROM MSAcpi_ThermalZoneTemperature“) WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY NULL &pEnumerator))){
IWbemClassobject *pclsObj;
ULONG uReturn = 0;
while (pEnumerator){
pEnumerator->Next(WBEM_INFINITE 1 &pclsObj &uReturn);
if (0 == uReturn)
break;
VARIANT vtProp;
VariantInit(&vtProp);
pclsObj->Get(L“CurrentTemperature“ 0 &vtProp 0 0);
wcout << “Current CPU Temperature : “ << (vtProp.intVal - 2732) / 10.0 << endl;
cout << endl;
VariantClear(&vtProp);
pclsObj->Release();
}
}
}
pSvc->Release();
}
pLoc->Release();
}
}
}catch (_com_error err){
}
CoUninitialize();
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-07-20 01:09  CPU_temperature
     目录           0  2017-07-20 01:08  CPU_temperature.vs
     目录           0  2017-07-20 01:08  CPU_temperature.vsConsoleApplication1
     目录           0  2017-07-20 02:41  CPU_temperature.vsConsoleApplication1v15
     文件       33280  2017-07-20 02:42  CPU_temperature.vsConsoleApplication1v15.suo
     文件    32489472  2017-07-20 02:42  CPU_temperature.vsConsoleApplication1v15Browse.VC.db
     目录           0  2017-07-20 01:08  CPU_temperature.vsConsoleApplication1v15ipch
     目录           0  2017-07-20 01:08  CPU_temperature.vsConsoleApplication1v15ipchCONSOLEAPPLICATION1-ec32c45a
     文件     3538944  2017-07-20 01:19  CPU_temperature.vsConsoleApplication1v15ipchCONSOLEAPPLICATION1-ec32c45aCONSOLEAPPLICATION1-822ffee4.ipch
     目录           0  2017-07-20 01:20  CPU_temperatureConsoleApplication1
     文件        1339  2017-07-20 01:08  CPU_temperatureConsoleApplication1.sln
     文件        1792  2017-07-20 01:20  CPU_temperatureConsoleApplication1ConsoleApplication1.cpp
     文件        7715  2017-07-20 01:08  CPU_temperatureConsoleApplication1ConsoleApplication1.vcxproj
     文件        1326  2017-07-20 01:08  CPU_temperatureConsoleApplication1ConsoleApplication1.vcxproj.filters
     目录           0  2017-07-20 01:21  CPU_temperatureConsoleApplication1Debug
     目录           0  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tlog
     文件        1698  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tlogCL.command.1.tlog
     文件       35674  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tlogCL.read.1.tlog
     文件        1312  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tlogCL.write.1.tlog
     文件         198  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tlogConsoleApplication1.lastbuildstate
     文件        1458  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tloglink.command.1.tlog
     文件        3700  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tloglink.read.1.tlog
     文件         686  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleA.BC979902.tloglink.write.1.tlog
     文件         236  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleApplication1.log
     文件      113853  2017-07-20 01:21  CPU_temperatureConsoleApplication1DebugConsoleApplication1.obj
     文件     3276800  2017-07-20 01:09  CPU_temperatureConsoleApplication1DebugConsoleApplication1.pch
     文件       12180  2017-07-20 01:09  CPU_temperatureConsoleApplication1Debugstdafx.obj
     文件      887808  2017-07-20 01:21  CPU_temperatureConsoleApplication1Debugvc141.idb
     文件     1003520  2017-07-20 01:21  CPU_temperatureConsoleApplication1Debugvc141.pdb
     文件        1594  2017-07-20 01:08  CPU_temperatureConsoleApplication1ReadMe.txt
     文件         223  2017-07-20 01:08  CPU_temperatureConsoleApplication1stdafx.cpp
............此处省略6个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)