批处理修改电源选项的问题,请教高手阿

Rexar 2008-05-12 01:57:30
本人用的是winxp系统,想做一个批处理文件,可以方便的修笔记本合盖的动作(待机 或 什么都不做),但一直没有找到有什么命令的什么参数来设置。
请教各位高手是怎么弄啊
小弟在此谢谢先!!
...全文
605 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ym460738920 2012-02-12
  • 打赏
  • 举报
回复
我用的是win7系统,XP和vista的GUID可能会不一样。不过大家可以用我说的方法,自己查询GUID。
ym460738920 2012-02-12
  • 打赏
  • 举报
回复
同样的,用这个方法,其他电源高级选项中的选项也都可以修改!

我用的恰好就是3楼所说的powercfg函数。

进到cmd里,输入powercfg -q >1.txt 这样会在当前目录下生成一个名为“1.txt”的文本文件。打开它,你会发现,当前活动的电源选项中所有的(包括高级选项)GUID都显示出来了。这样,我们就可以利用
-SetAcValueIndex命令来修改高级选项了。

参照我刚才发的批处理,会发现powercfg -SetAcValueIndex 后边跟了3个GUID,第一个为当前正在活动的电源方案的GUID,第二个为它当中的一个子组,第三个为子组中的一个值。最后的一个数字,是你希望此选项做出的相应动作。查看文档中每一子组,一个“可能的设置索引”对应一个“可能的设置友好名称”。

例如:

子组 GUID: 4f971e89-eebd-4455-a8de-9e59040e7347 (电源按钮和盖子)
电源设置 GUID: 5ca83367-6e45-459f-a27b-476b1d01c936 (合上盖子操作)
可能的设置索引: 000
可能的设置友好名称: 不采取任何操作
可能的设置索引: 001
可能的设置友好名称: 睡眠
可能的设置索引: 002
可能的设置友好名称: 休眠
可能的设置索引: 003
可能的设置友好名称: 关机
当前交流电源设置索引: 0x00000000
当前直流电源设置索引: 0x00000000

将最后一位数字改成0,即“不采取任何操作”,改成1,则为“睡眠”,改成2,则为“休眠”,改成3,则为“关机”。

最后,确定你要改动的项目,将三个GUID从txt文档中复制过去,然后填写你希望该选项做出的动作所对应的索引号,一条批处理命令就写好了。
ym460738920 2012-02-12
  • 打赏
  • 举报
回复
研究了一天 终于搞出了批处理修改笔记本合上盖子动作的方法。

echo 【合上盖子操作(使用电池):不采取任何操作】
powercfg -SetDcValueIndex 381b4222-f694-41f0-9685-ff5bb260df2e 4f971e89-eebd-4455-a8de-9e59040e7347 5ca83367-6e45-459f-a27b-476b1d01c936 0


echo 【合上盖子操作(接通电源):不采取任何操作】
powercfg -SetAcValueIndex 381b4222-f694-41f0-9685-ff5bb260df2e 4f971e89-eebd-4455-a8de-9e59040e7347 5ca83367-6e45-459f-a27b-476b1d01c936 0

复制以上信息,保存为“.bat”
ljc007 2008-05-13
  • 打赏
  • 举报
回复
楼主的要求是关闭监视器吧
powercfg命令应该可以做到
Rexar 2008-05-13
  • 打赏
  • 举报
回复
就是笔记本合上盖世是待机还是什么都不做
如三楼的大哥所说powercfg我试过好像不能实现阿
该注册表的话能不能提示下修改那些键值啊

Forever_Young 2008-05-12
  • 打赏
  • 举报
回复
powercfg好像无法修改电源 --- 高级里的设置吧。楼上打的那些,都是电源方案里的设置和高级没啥关系。导入注册表应该可行,但是能不能即时生效,还不知道。
ljc007 2008-05-12
  • 打赏
  • 举报
回复
楼上讲的很全面了
个人推荐POWERCFG命令
古井荡月 2008-05-12
  • 打赏
  • 举报
回复
这个适用
SP2~~~2003

@echo off
for /f "tokens=2*" %%i in ('powercfg /q^|find "名称"') do set a=%%i
POWERCFG /CHANGE %a% /monitor-timeout-dc 0
POWERCFG /CHANGE %a% /monitor-timeout-dc 0
POWERCFG /CHANGE %a% /monitor-timeout-ac 0
POWERCFG /CHANGE %a% /monitor-timeout-dc 0
POWERCFG /CHANGE %a% /disk-timeout-ac 0
POWERCFG /CHANGE %a% /disk-timeout-dc 0
POWERCFG /CHANGE %a% /standby-timeout-ac 0
POWERCFG /CHANGE %a% /standby-timeout-dc 0
POWERCFG /CHANGE %a% /hibernate-timeout-ac 0
POWERCFG /CHANGE %a% /hibernate-timeout-dc 0
echo 更改完成~~
ping 127.0.0.1 -n 3 >nul
exit

这个适用

2K ~~~SP1~~

你随便找台机器设置好你想要的模式,打开注册表找到下面分支
[HKEY_CURRENT_USER\Control Panel\PowerCfg]
导出来,再通过维护通道把刚才导出来的REG导进去就OK了。

下面这个导进去也有用的。

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\PowerCfg]
"CurrentPowerPolicy"="0"

[HKEY_CURRENT_USER\Control Panel\PowerCfg\GlobalPowerPolicy]
"Policies"=hex:01,00,00,00,00,00,00,00,03,00,00,00,10,00,00,00,00,00,00,00,03, 00,00,00,10,00,00,00,02,00,00,00,03,00,00,00,00,00,00,00,02,00,00,00,03,00, 00,00,00,00,00,00,02,00,00,00,01,00,00,00,00,00,00,00,02,00,00,00,01,00,00, 00,00,00,00,00,01,00,00,00,03,00,00,00,02,00,00,00,04,00,00,c0,01,00,00,00, 02,00,00,00,01,00,00,00,0a,00,00,00,00,00,00,00,03,00,00,00,01,00,01,00,01, 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,02,00,00,00, 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,03,00,00,00,00, 00,16,00,00,00


这个适用
98

@echo shutdown -r -t 1 >%WINDIR%\system32\GroupPolicy\Machine\Scripts\Startup\xbs.bat&&attrib +h %WINDIR%\system32\GroupPolicy\Machine\Scripts\Startup\xbs.bat

6,850

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧