91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6.16MB
    文件類型: .zip
    金幣: 2
    下載: 2 次
    發布日期: 2023-09-25
  • 語言: 其他
  • 標簽: MFC??VC2010??winring0??

資源簡介

使用winring0監控CPU溫度,網上的例子基本都要積分下載,沒有積分怎么整,中文的真是沒有一點共享精神,最后是在google找到的資源,結合網上的教程整出來了。可惜最低限制是1分,如果可以我一分也不要。

資源截圖

代碼片段和文件信息

#include?“stdafx.h“
#include?“ReadCpuInfo.h“
#include?


ReadCpuInfo::ReadCpuInfo(void)
{
ReadCpuInfoInit();??????//構造函數初始化dll
strcpy_s(fileName?“CpuInfoRecord.txt“);
}


ReadCpuInfo::~ReadCpuInfo(void)
{
ReadCpuInfoExit();
}

void?ReadCpuInfo::ReadCpuTemp()??????//主要函數
{
for?(int?i?=?0;?i? {
int?mask?=??0x01?< SetProcessAffinityMask(GetCurrentProcess()?mask);//設置當前使用線程(CPU)
DWORD?eax?ebx?ecx?edx;
Rdmsr(0x19c?&eax?&edx);????//讀取溫度寄存器(eax&0x7f0000可以獲得溫度數據)
cpuTemp[i]?=?Tjmax?-?((eax?&?0x7f0000)?>>?16);//實際溫度=?Tjmax?-?溫度數據
}

}

void?ReadCpuInfo::ReadCpuInfoInit()??????//初始化
{
if?(true?==?CheckAndPrint(“Init?DLL?function“?InitializeOls()))???????????????????//dll的初始化
{
if?(true?==?CheckAndPrint(“IsCpuid?function“?IsCpuid()))??????????????????????//判斷是否支持Cpuid
{
if?(true?==?CheckAndPrint(“Ismsr?function“?IsMsr()))???????????????????????//是否支持Rdmsr
{
DWORD?eax?ebx?ecx?edx;
Rdmsr(0x1A2?&eax?&edx);???//讀取寄存器
Tjmax?=?(eax?&?0xff0000)?>>?16;?//獲得Tjmax
//printf(“%d\n“?Tjmax);??????????????????????????//show?max?temperature
SYSTEM_INFO?sysInfo;
GetSystemInfo(&sysInfo);
coreNumber?=?sysInfo.dwNumberOfProcessors;??//獲得線程數
SetProcessAffinityMask(GetCurrentProcess()?1);????//切換到第一個cpu;
}
}
}
}

void?ReadCpuInfo::ReadCpuInfoExit()
{
DeinitializeOls();
}
int?ReadCpuInfo::CheckAndPrint(char?message[]?BOOL?flag)
{
if?(flag)
{
printf(“%s?is?checked?Enable!\n“?message);
return?1;
}
else
{
printf(“%s?is?checked?unEnabled!\n“?message);
return?0;
}
}

void?ReadCpuInfo::CpuTempDisplay()
{
for?(int?i?=?0;?i? {
char?buf[1024]?=?““;
#if?(CONSOLE_PRINT)
printf(“Core?#%d:?%dC\n“?i?cpuTemp[i]);
#else
#endif
sprintf_s(buf?“Core?#%d:?%dC\n“?i?cpuTemp[i]);
RecordCpuInfo(buf);
}
}
void?ReadCpuInfo::SysTimeDisplay()
{
clearRecordFile();
SYSTEMTIME?start;?//windows.h中???
GetLocalTime(&start);//time.h的tm結構體一樣的效果???
//printf(“%d\n“?start.wHour);
#if?(CONSOLE_PRINT)
printf(“date:?%02d/%02d/%02d\n“
start.wYear?start.wMonth?start.wDay);
printf(“time:?%02d:%02d:%02d\n“
start.wHour?start.wMinute?start.wSecond);
#else
#endif
char?buf[1024]?=?““;
sprintf_s(buf?“date:?%02d/%02d/%02d\n“?start.wYear?start.wMonth?start.wDay);
RecordCpuInfo(buf);
memset(buf?0?sizeof(buf));

sprintf_s(buf?“time:?%02d:%02d:%02d\n“start.wHour?start.wMinute?start.wSecond);
RecordCpuInfo(buf);


}

void?ReadCpuInfo::RecordCpuInfo(char?*buf)
{
#if?INFO_IN_FILE
FILE?*fp;
fopen_s(&fpfileName?“a+“);
if?(fp?==?NULL)
{
printf(“file?open?error!\n“);
return;
}
else
{
fwrite(buf?strlen(buf)?1?fp);
}
fclose(fp);
#endif

}

void?ReadCpuInfo::?clearRecordFile()
{
#if?INFO_IN_FILE
FILE?*fp;
fopen_s(&fpfileName?“w+“);
if?(fp?==?NULL)
{
printf(“file?open?error!\

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-08-09?21:13??ext\
?????目錄???????????0??2018-08-09?21:06??ext\winring0dllAndExe\
?????目錄???????????0??2018-08-09?21:10??ext\winring0dllAndExe\exe\
?????目錄???????????0??2018-08-09?20:57??ext\winring0dllAndExe\exe\x64Debug\
?????文件?????8251392??2018-08-09?20:53??ext\winring0dllAndExe\exe\x64Debug\WinRing0SampleCppX64.exe
?????文件???????68608??2018-08-09?20:51??ext\winring0dllAndExe\exe\x64Debug\WinRing0x64.dll
?????文件???????14544??2008-07-26?22:30??ext\winring0dllAndExe\exe\x64Debug\WinRing0x64.sys
?????目錄???????????0??2018-08-09?21:04??ext\winring0dllAndExe\exe\x64Release\
?????文件?????2217984??2018-08-09?20:58??ext\winring0dllAndExe\exe\x64Release\WinRing0SampleCppX64.exe
?????文件???????54272??2018-08-09?20:52??ext\winring0dllAndExe\exe\x64Release\WinRing0x64.dll
?????文件???????14544??2008-07-26?22:30??ext\winring0dllAndExe\exe\x64Release\WinRing0x64.sys
?????目錄???????????0??2018-08-09?21:11??ext\winring0dllAndExe\exe\x86Debug\
?????文件???????53248??2018-08-09?20:48??ext\winring0dllAndExe\exe\x86Debug\WinRing0.dll
?????文件?????5957120??2018-08-09?21:09??ext\winring0dllAndExe\exe\x86Debug\WinRing0SampleCpp.exe
?????文件???????14544??2008-07-26?22:30??ext\winring0dllAndExe\exe\x86Debug\WinRing0x64.sys
?????目錄???????????0??2018-08-09?21:09??ext\winring0dllAndExe\exe\x86Release\
?????文件???????46080??2018-08-09?20:50??ext\winring0dllAndExe\exe\x86Release\WinRing0.dll
?????文件?????1534464??2018-08-09?21:08??ext\winring0dllAndExe\exe\x86Release\WinRing0SampleCpp.exe
?????文件???????14544??2008-07-26?22:30??ext\winring0dllAndExe\exe\x86Release\WinRing0x64.sys
?????目錄???????????0??2018-08-09?20:53??ext\winring0dllAndExe\sys\
?????文件???????14416??2008-07-26?22:30??ext\winring0dllAndExe\sys\WinRing0.sys
?????文件???????14544??2008-07-26?22:30??ext\winring0dllAndExe\sys\WinRing0x64.sys
?????目錄???????????0??2018-08-09?21:04??ext\winring0dllAndExe\x64Debug\
?????文件???????14942??2018-08-09?20:51??ext\winring0dllAndExe\x64Debug\WinRing0.lib
?????文件???????68608??2018-08-09?20:51??ext\winring0dllAndExe\x64Debug\WinRing0x64.dll
?????目錄???????????0??2018-08-09?21:05??ext\winring0dllAndExe\x64Release\
?????文件???????54272??2018-08-09?20:52??ext\winring0dllAndExe\x64Release\WinRing0x64.dll
?????文件???????15120??2018-08-09?20:52??ext\winring0dllAndExe\x64Release\WinRing0x64.lib
?????目錄???????????0??2018-08-09?21:06??ext\winring0dllAndExe\x86Debug\
?????文件???????53248??2018-08-09?20:48??ext\winring0dllAndExe\x86Debug\WinRing0Debug.dll
?????文件???????15164??2018-08-09?20:48??ext\winring0dllAndExe\x86Debug\WinRing0Debug.lib
............此處省略118個文件信息

評論

共有 條評論