【已解决】唤醒不需要输入密码的批处理,怎样换成AU3执行代码?
本帖最后由 fybhwsx 于 2014-1-8 23:15 编辑@echo off
for /f "tokens=3" %%i in ('powercfg /q^|findstr /r "电源方案"') do (set guid1=%%i)
powercfg -setdcvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0
powercfg -setacvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0
虽然不能换成au3的直接执行代码,但把代码存为.bat 文件后,用ShellExecute("唤醒时不需要密码.bat","", @ScriptDir, "open", @SW_HIDE)可以成功运行。
顺便再贴几个其它电源设置项,给有需要的朋友。如果使用禁用休眠,就不需要使用从不休眠了。Run(@ComSpec & " /c " & 'powercfg -h off', "", @SW_HIDE);禁用休眠
Sleep(500)
;Run(@ComSpec & " /c " & 'POWERCFG /CHANGE hibernate-timeout-ac 0', "", @SW_HIDE);从不休眠
;Sleep(500)
;Run(@ComSpec & " /c " & 'POWERCFG /CHANGE hibernate-timeout-dc 0', "", @SW_HIDE);从不休眠
;Sleep(500)
Run(@ComSpec & " /c " & 'POWERCFG /CHANGE disk-timeout-ac 0', "", @SW_HIDE);从不关闭硬盘
Sleep(500)
Run(@ComSpec & " /c " & 'POWERCFG /CHANGE disk-timeout-dc 0', "", @SW_HIDE);从不关闭硬盘 存为bat文件,Run() 执行… 存为bat文件,Run() 执行…
afan 发表于 2014-1-8 21:12 http://www.autoitx.com/images/common/back.gif
老大,不能au3直接执行吗? 批处理要以管理运行才管用的。 RunWait(@ComSpec & ' /c ' & '@echo off ', '', @SW_HIDE)
RunWait(@ComSpec & ' /c ' & 'for /f "tokens=3" %i in (' & "'" & _
'powercfg /q^|findstr /r "电源方案"' & "'" & _
') do (set guid1=%i) ', '', @SW_HIDE)
RunWait(@ComSpec & ' /c ' & 'powercfg -setdcvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0 ', '', @SW_HIDE)
RunWait(@ComSpec & ' /c ' & 'powercfg -setacvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0 ', '', @SW_HIDE)
yinbinly 发表于 2014-1-8 21:21 http://www.autoitx.com/images/common/back.gif
谢谢,不过好像不管用? 回复 3# fybhwsx
这样?Local $Str = '@echo off &for /f "tokens=3" %%i in (' & "'powercfg /q^|findstr /r " & '"电源方案"' & "') do (set guid1=%%i) &powercfg -setdcvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0 &powercfg -setacvalueindex %guid1% fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0"
Run(@ComSpec & ' /c ' & $Str, '', 0) 回复fybhwsx
这样?
afan 发表于 2014-1-8 22:01 http://www.autoitx.com/images/common/back.gif
谢谢,还是不行。看来现在只能手动右键——以管理员身份运行bat了。 呵呵!大家都很给力啊! 调用bat文件,与你转换成AU3代码的要求是不相符的。
先要把cmd脚本转成单行命令,然后再用run语句执行。注意要用“/V:ON/c ”参数和“setlocal enabledelayedexpansion”延缓环境变量扩展,%×%要换成!×!。
请参阅:调用cmd(dos)命令详解 调用bat文件,与你转换成AU3代码的要求是不相符的。
先要把cmd脚本转成单行命令,然后再用run语句执行。注 ...
vuivui 发表于 2014-1-9 09:37 http://www.autoitx.com/images/common/back.gif
谢谢,学习中。。如果您能给出实现的代码,那就更好了。。 本帖最后由 fybhwsx 于 2014-1-10 09:16 编辑
这回彻底解决了,不是au3的问题,是电源命令问题!;电源设置
Run(@ComSpec & " /c " & 'powercfg -h off', "", @SW_HIDE);禁用休眠
Sleep(50)
;Run(@ComSpec & " /c " & 'POWERCFG /CHANGE hibernate-timeout-ac 0', "", @SW_HIDE);从不休眠
;Sleep(50)
;Run(@ComSpec & " /c " & 'POWERCFG /CHANGE hibernate-timeout-dc 0', "", @SW_HIDE);从不休眠
;Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0', "", @SW_HIDE);唤醒时不需要密码
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e fea3413e-7e05-4911-9a71-700331f1c294 0e796bdb-100d-47d6-a2d5-f7d2daa51f51 0', "", @SW_HIDE);唤醒时不需要密码
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d 1', "", @SW_HIDE);启用唤醒定时器
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 238c9fa8-0aad-41ed-83f4-97be242c8f20 bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d 1', "", @SW_HIDE);启用唤醒定时器
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 0012ee47-9041-4b5d-9b77-535fba8b1442 6738e2c4-e8a5-4a42-b16a-e040e769756e 0', "", @SW_HIDE);从不关闭硬盘
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 0012ee47-9041-4b5d-9b77-535fba8b1442 6738e2c4-e8a5-4a42-b16a-e040e769756e 0', "", @SW_HIDE);从不关闭硬盘
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 4f971e89-eebd-4455-a8de-9e59040e7347 5ca83367-6e45-459f-a27b-476b1d01c936 3', "", @SW_HIDE);合上盖子关机
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 4f971e89-eebd-4455-a8de-9e59040e7347 5ca83367-6e45-459f-a27b-476b1d01c936 3', "", @SW_HIDE);合上盖子关机
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 7516b95f-f776-4464-8c53-06167f40cc99 aded5e82-b909-4619-9949-f5d71dac0bcb 0', "", @SW_HIDE);显示器亮度(0)
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 7516b95f-f776-4464-8c53-06167f40cc99 aded5e82-b909-4619-9949-f5d71dac0bcb 0', "", @SW_HIDE);显示器亮度(0)
Sleep(50)
Run(@ComSpec & " /c " & 'POWERCFG -setactive 381b4222-f694-41f0-9685-ff5bb260df2e', "", @SW_HIDE);激活电源方案 这是为无人值守设计的电源方案。用计划任务定时唤醒睡眠状态的笔记本,进行自动交易用的。希望能帮助到需要的朋友。。 谢谢,已经使用。。。
页:
[1]