Autohotkey 中文论坛

完整版: 如何实现睡眠?
你目前正在浏览的是简化版. 请点击这里浏览完整版
请问如何实现一运行脚本就进入睡眠,并且能够自动检测系统是否已经被我手动唤醒?
我看Shutdown命令愣是没看懂…,还有那个检测有没有唤醒也把我难住了…

[ 本帖最后由 badnull 于 2008-10-14 07:19 编辑 ]
; Call the Windows API function "SetSuspendState" to have the system suspend or hibernate.
; Windows 95/NT4: Since this function does not exist, the following call would have no effect.
; Parameter #1: Pass 1 instead of 0 to hibernate rather than suspend.
; Parameter #2: Pass 1 instead of 0 to suspend immediately rather than asking each application for permission.
; Parameter #3: Pass 1 instead of 0 to disable all wake events.
DllCall("PowrProf\SetSuspendState", "int", 0, "int", 0, "int", 0)
有没有唤醒就不用判断了,因为程序能运行肯定是唤醒状态,睡眠状态程序又不会运行!
我是想用脚本先使系统进入睡眠状态,然后我手动唤醒,接着脚本程序检测到系统已经被唤醒了,就弹出个对话框,说已唤醒…
关于监视休眠状态,去看看脚本展览区的我写的那个休息听歌脚本,前面有用OnMessage函数监视待机和休眠状态。
睡眠状态时mParam为7,那正常状态下是多少?我要检测是不是唤醒了…
引用:原帖由 badnull 于 2008-10-8 13:10 发表 [Image: back.gif]
睡眠状态时mParam为7,那正常状态下是多少?我要检测是不是唤醒了…

当检测到目前状态时的mParam不为7时,表示已被从睡眠状态解放
楼上英明啊,我怎么就没想到呢?
还有一个问题:我能不能通过监测屏幕有没有亮,来判断是不是唤醒了并且屏幕已打开?
不能做到由屏幕有没有亮来判断吗?
顶起!看有没有谁知道:lol
参考网址