如何获取CPU温度以及风扇转速?(300分)

Y

yu_ting

Unregistered / Unconfirmed
GUEST, unregistred user!
如题。本人想使用Windows的WMI功能达到目标,WMI中的Win32_Fan可获取风扇转速、Win32_Temperature可获取CPU温度。但需要主板支持WMI,而不幸的是大多数主板并不支持WMI。许多共享软件,如:CPUCool可以获取许多不同型号主板的CPU温度和风扇转速,想必一定可以实现。各位有没有更好的方式?
 
参考下这里
http://www.lihuasoft.net/article/show.php?id=450
 
WMI是硬件事先已經驅動設備,所有你取裡的參數就可以得到。
要想在不同的主板上實現這一功能,用C51+溫度傳感器就可以實現。這是單片機編程方面的東西。
 
这个应该是可以做到的,关注...
 
SiWeiLiuLang提供的资料小弟已经也找到过。CPU的型号、频率等信息可通过WMI提供的Win32_Processor来获取。如:我机器执行SELECT * FROM Win32_Processor的结果是:
instance of Win32_Processor
{
AddressWidth = 32;
Architecture = 0;
Availability = 3;
Caption = "x86 Family 15 Model 2 Stepping 9";
CpuStatus = 1;
CreationClassName = "Win32_Processor";
CurrentClockSpeed = 2405;
CurrentVoltage = 15;
DataWidth = 32;
Description = "x86 Family 15 Model 2 Stepping 9";
DeviceID = "CPU0";
ExtClock = 133;
Family = 2;
L2CacheSize = 0;
L2CacheSpeed = 4294967295;
Level = 15;
Manufacturer = "GenuineIntel";
MaxClockSpeed = 2405;
Name = " Intel(R) Pentium(R) 4 CPU 2.40GHz";
PowerManagementSupported = FALSE;
ProcessorId = "BFEBFBFF00000F29";
ProcessorType = 3;
Revision = 521;
Role = "CPU";
SocketDesignation = "PGA 478";
Status = "OK";
StatusInfo = 3;
Stepping = "9";
SystemCreationClassName = "Win32_ComputerSystem";
SystemName = "HZYONG";
UpgradeMethod = 4;
Version = "型号 2,步进 9";
};
但Win32_Fan、Win32_Temperature执行结果为空,想必是主板不支持......
 
还是用目测吧.方法如下:
测试前请调整自已的精神状态,选在采光比较好的室内(注意:必须是室内,外面风大,会影响测速读数),一切都准备好后,请将主机盖掀开,并且通上电源,眼珠盯着风扇以每秒52X的速度飞快转动.计时约为1分钟.最后把你看到的结果计算一下.就可以了.(注:测试完后请立即使用"两眼真视明"滴眼露,以免积劳成疾)
 
吼吼!benhacker~~~~~~~厉害啊!
 
对了,现在的车子上都有计时表
拆下来,把风扇装上,OK
 
莫再灌水了,给个思路,帮我解决这个问题。感谢!
 
不好意思借宝地一用:
本人因临时改变计划 先将北京去乌鲁木齐T69的卧铺票两张卖出 时间是25号晚上7:24有意者请电话联系:13366991345 数量有限欲购者从速!!
 
读bios的信息。
 
呵,玩笑归玩笑,现在跟你讲一个最容易实现,又最省钱的办法,测试需要光电鼠标一个.敏感度要好的,然后脱壳,取出光电传感器装在CPU风扇上方,然后计算鼠标的行程.....绝对可行,因为光速永远大于风扇的转速.
 
benhacker,你真是老大!
 
hhjjhhjj,读BIOS信息我也想过,但代码如何写呢?
 
BIOS信息有用吗?哎,真服了你们.CPU风扇只接了一根电源,系统凭什么去测量它的转速?
 
CPU风扇可不可以测速要看风扇连接线的数目,一般三根线的风扇均支持主板测速。不但CPU风扇可测速,电源风扇也可以测速的。
 
汗...你说你要测它干嘛?劳民伤财.
 
  benhacker,因为在准备做一个软件,远程监控各台网络设备的CPU温度、风扇转速等参数。并设置报警阈值,当采样值超过阈值时则进行报警。
  第一要解决的就是CPU温度和风扇转速,否则这个项目就没法做了。衷心希望得到DelphiBBS上各位热心朋友的帮助!
 
反编译能得到信息的程序,看看它如何做的。
 

Similar threads

S
回复
0
查看
970
swish
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
I
回复
0
查看
703
import
I
顶部