user-0 提问: 获得CPU风扇转速

回复:
user: user-1
content: 楼主是怎么解决的这个问题

user: user-2
content: y pc has T-Balancer bigNG fan controller or http://www.alphacool.com/product_info.php/info/p999_Alphacool-Heatmaster-II.html?language=en ???

user: user-0
content: 即将放假回家过年，感谢 luciferisnotsatan user-7 anti-child 等，各位好心人！ 年后继续这个问题，如果有好的思路我继续给分。 年前就到这里，我给大家散分！多少是个意思！祝大家新年快乐！

user: user-0
content: 引用 17 楼 xinkexue 的回复:似乎就是调用API而已  请问能告诉我用具体的哪个API么？谢谢

user: user-0
content: 引用 14 楼 luciferisnotsatan 的回复:[quote=引用 12 楼 coperator 的回复:] [quote=引用 9 楼 luciferisnotsatan 的回复:] DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.  这句话里的两个连接看下有没有用  CIM_Tachometer CIM_AssociatedSensor 这两个类WMI都不实现，我应该怎么用啊？求指点[/quote] http://stackoverflow.com/questions/1310777/set-fan-speed-on-windows-in-c 这里有个通过com来获得的CIM_Fan，你可以试着用同样的方法来获得CIM_Tachometer   http://www.dmtf.org/standards/smbios   你可以在这里下到smbios协议[/quote]  http://stackoverflow.com/questions/1310777/set-fan-speed-on-windows-in-c 是set部分，我要的是get部分  http://www.dmtf.org/standards/smbios  这个非常好！我用细看了 感谢您，多次的帮助！

user: user-3
content: 似乎就是调用API而已

user: user-2
content: WMI中有一个Win32_Fan T-Balancer bigNG fan controller or http://www.alphacool.com/product_info.php/info/p999_Alphacool-Heatmaster-II.html? can work bacos

user: user-0
content: 引用 10 楼 KenZhang1031 的回复:这里有源代码 http://www.oschina.net/code/snippet_222150_14129  谢谢。但是不知道为什么？我用鲁大师读取到的是 1328转/分钟而 程序给出的是675，能告诉一下原因么？

user: user-0
content: 引用 9 楼 luciferisnotsatan 的回复:DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.  这句话里的两个连接看下有没有用  CIM_Tachometer CIM_AssociatedSensor 这两个类WMI都不实现，我应该怎么用啊？求指点

user: user-0
content: 引用 8 楼 luciferisnotsatan 的回复:class Win32_Fan : CIM_Fan {   boolean  ActiveCooling;   uint16   Availability;   string   Caption;   uint32   ConfigManagerErrorCode;   boolean  ConfigManagerUserConfig;   string   CreationClassName;   string   Description;   uint64   DesiredSpeed;   string   DeviceID;   boolean  ErrorCleared;   string   ErrorDescription;   datetime InstallDate;   uint32   LastErrorCode;   string   Name;   string   PNPDeviceID;   uint16   PowerManagementCapabilities[];   boolean  PowerManagementSupported;   string   Status;   uint16   StatusInfo;   string   SystemCreationClassName;   string   SystemName;   boolean  VariableSpeed; };  DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.      For more information about using uint64 values in scripts, see Scripting in WMI.  这个不是么？网上看了下，好像有些主板也不支持WMI获取fan的接口。 不行就只有试试SMBIOS了。如果是windows xp系统，应该还可以在用户态下映射物理内存文件。  “不行就只有试试SMBIOS了。如果是windows xp系统，应该还可以在用户态下映射物理内存文件。”您说的SMBIOS，是在debug中查到的么？在Win7下可以用“用户态下映射物理内存文件”么？

user: user-4
content: 引用 12 楼 coperator 的回复:[quote=引用 9 楼 luciferisnotsatan 的回复:] DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.  这句话里的两个连接看下有没有用  CIM_Tachometer CIM_AssociatedSensor 这两个类WMI都不实现，我应该怎么用啊？求指点[/quote] http://stackoverflow.com/questions/1310777/set-fan-speed-on-windows-in-c 这里有个通过com来获得的CIM_Fan，你可以试着用同样的方法来获得CIM_Tachometer   http://www.dmtf.org/standards/smbios   你可以在这里下到smbios协议

user: user-5
content: 这里有源代码 http://www.oschina.net/code/snippet_222150_14129

user: user-4
content: DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.  这句话里的两个连接看下有没有用

user: user-4
content: class Win32_Fan : CIM_Fan {   boolean  ActiveCooling;   uint16   Availability;   string   Caption;   uint32   ConfigManagerErrorCode;   boolean  ConfigManagerUserConfig;   string   CreationClassName;   string   Description;   uint64   DesiredSpeed;   string   DeviceID;   boolean  ErrorCleared;   string   ErrorDescription;   datetime InstallDate;   uint32   LastErrorCode;   string   Name;   string   PNPDeviceID;   uint16   PowerManagementCapabilities[];   boolean  PowerManagementSupported;   string   Status;   uint16   StatusInfo;   string   SystemCreationClassName;   string   SystemName;   boolean  VariableSpeed; };  DesiredSpeed      Data type: uint64     Access type: Read/write      Currently requested fan speed, defined in revolutions per minute, when a variable speed fan is supported (VariableSpeed is TRUE). The current speed is determined by a sensor (CIM_Tachometer) that is associated with the fan using the CIM_AssociatedSensor relationship. This property is inherited from CIM_Fan.      For more information about using uint64 values in scripts, see Scripting in WMI.  这个不是么？网上看了下，好像有些主板也不支持WMI获取fan的接口。 不行就只有试试SMBIOS了。如果是windows xp系统，应该还可以在用户态下映射物理内存文件。

user: user-0
content: 引用 4 楼 derekrose 的回复:http://www.codeproject.com/Articles/17973/How-To-Get-Hardware-Information-CPU-ID-MainBoard-I  谢谢！ 您给出的这个资料，我看了，但是没有找到风扇相关的信息啊！

user: user-0
content: 引用 2 楼 user-7 的回复:http://msdn.microsoft.com/en-us/library/aa394146(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa387269(v=vs.85).aspx http://stackoverflow.com/questions/485448/programmatically-access-cpu-fan-on-a-laptop-windows  谢谢！ 这个好像说WMI没有支持风扇转速的设置是吧？ 那有什么其他办法么？

user: user-0
content: 引用 1 楼 luciferisnotsatan 的回复:SMBIOS里取到Cooling Device这个结构，应该就有风扇的信息。不过现在的windows（XP以后）已经不能在用户态下映射物理内存了。你还可以试试window提供的WMI，看看有没有风扇速度。  linux下，SMBIOS拿。或者看看dmidecode能不能直接拿到风扇转速。  谢谢！ 我是在Windows操作系统下，想要获得信息。 WMI中有一个Win32_Fan类，但是我得不到想要的信息。 不知道还有没有其他的类能获得风扇信息？

user: user-6
content: http://www.codeproject.com/Articles/17973/How-To-Get-Hardware-Information-CPU-ID-MainBoard-I

user: user-0
content: 谢谢！ 我是在Windows操作系统下，想要获得信息。 WMI中有一个Win32_Fan类，但是我得不到想要的信息。 不知道还有没有其他的类能获得风扇信息？

user: user-7
content: http://msdn.microsoft.com/en-us/library/aa394146(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa387269(v=vs.85).aspx http://stackoverflow.com/questions/485448/programmatically-access-cpu-fan-on-a-laptop-windows