西部在线数码世界智能手机软件SKScheMa → [原创]如何保持背光和注册表的生效
查看完整版本:[原创]如何保持背光和注册表的生效
2008/12/16 1:01:11
<div class="g_t_center g_c_pdin g_p_center c07 content" style="width: 760px;" id="blogtext_fks_084067083094082070081086081095082082084071085083082075">

[转自konan:http://skschema.blog.163.com/blog/static/64541548200812402325608/]

今天梵耶问的这个问题,google一下有人给出调整注册表的方法,但解释不太完整。我测试后再解释一下,以本人2003se系统为例:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\ControlPanel\Backlight]
"BatteryTimeout"=dword:0000001e                   ----背光持续时间换成十进制,如果为0则一直保持背光
"BatteryTimeoutUnchecked"=dword:00000000 ----仅在上一项为0时记录上次选项值
"Brightness"=dword:00000008                          ----背光级别
"DefaultACBrightness"=dword:0000000a          ----默认电源背光级别
"DefaultBrightness"=dword:00000008               ----默认背光级别

 

参考上面的解释,我们只要修改"BatteryTimeout"为0就可以了。真的只是这样吗?

改过注册表的朋友可能发现,这样做没有什么效果,或者修改后不知道什么时候才生效的。我用MortScript写了下面的脚本来测试。
regwritedword("HKCU","ControlPanel\Backlight","BatteryTimeout",30)
sleep(40000)
message("ok1")
regwritedword("HKCU","ControlPanel\Backlight","BatteryTimeout",0)
sleep(40000)
message("ok2")
结果脚本写完注册表后在等待的40秒中,背光持续时间仍然是原来的时间长度,但弹出message后,设置才生效。注册表本身仅仅是记录系统设置,但系统并不是随时监视注册表的每个键值的变化,因此需要message来强迫系统生效。

基于这个想法,我又做一另一个试验,使用注册表来调节电池模式的背光级别。

regwritedword("HKCU","ControlPanel\Backlight","Brightness",2)
sleep(5000)
message("ok")
写入注册表后,仍然是没有什么反应,直到过了5秒确认过message后背光级别才发生变化。

总结:

1.保持背光的方法,修改注册表"BatteryTimeout"=dword:0000001e

2.使注册表生效的方法,message(相信还有其它方法可以实现,今天太晚了改天再弄明白。)

</div>
Powered by BBSXP 2008 MSSQL © 1998-2024
Processed in 0.00 second(s)