懂事的电脑就应该自觉工作,每天自动开机、联网、睡眠、醒来……
自动开机,nircmd,计划任务、以及睡眠醒来的事件ID
背景描述
办公室电脑,工作需要远程控制,如何实现有很多方案,不赘述,我用的是frp加密转发。
但是遇到停电、断网等情况,如何自动恢复(单位使用了锐捷认证系统)?
另外,一天24小时开着又太浪费,只需要某些时候接受可能的远程遥控。
在此情况下,我需要自动开机、自动联网、定时睡眠、定时唤醒。
分项加以说明,重点是计划任务的设置,以及睡眠醒来的事件ID。
自动开机
这是最好处理的,BIOS设置定时开机即可。每天还是每周,都按自己意愿设定。
将电源设置为恢复到上次的情况,如果停电,则来电自动开机,是我主动关机,则到了设定时间才自动开机。
自动联网
勾选锐捷认证软件的记住密码、自动登录和开机自启选项,将锐捷服务(rj supplicant service)设置成自动启动。
从睡眠中醒来后能否自动登录联网,另见后面章节。
定时睡眠
定时执行操作,无需任何第三方软件,Windows自带的计划任务就很好了,还可以把许多不必要的任务关闭。
睡眠命令是怎样呢?网上搜索有若干结果,不外是以下几种,大多都不确切。
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
或
shutdown -h
它们的功能都一样,执行系统休眠,如果关闭了休眠功能(比如命令用powercfg -h off),则进入睡眠状态。
如果不想关闭休眠功能又不想编程让电脑按指令睡眠,目前感觉nircmd最强大稳定。
nircmd.exe cmdwait [延时毫秒数] standby
中间的cmdwait [延时毫秒数]这一节,看自己需求,可以不要
进入睡眠只是它若干功能之九牛一毛,相当好用!
定时唤醒
同样也是使用计划任务来完成,与普通的任务相比,需要勾选“条件”选项卡中的“唤醒计算机运行此任务”。
实验表明,任务运行完成后,发现没有键鼠动作,计算机又倒头睡着了……
怎么保持清醒?
所以,这个任务不能太简单,太复杂则浪费计算机性能。
其实随便运行一个不会自动结束、也不会重复打开多个副本的软件就行。
我编写了一个小脚本,每分钟ping一下网关,循环8个小时,或直到下次此计划任务启动。✌️
怎么醒来联网?
联网简单,运行认证软件即可,但是“醒来”这个时机如何把握?
计划任务中,触发器,发生事件时。
查了若干资料,计划任务中,有方法定位到计算机醒来的事件。
主要有这么几种:
Windows-Kernel-Power with event ID 42Windows-Power-Troubleshooter with event ID 1
Windows-Kernel-General with ID 1
经实验,对不同的系统(Win7/Win10/Win11)有不同的效果,都加进去更保险。
其它问题
事后再想想,醒来联网是不是搞复杂了?
多此一举?
把联网认证的命令写到唤醒脚本的第一行应该就可以了。
Win11唤醒
系统换成Windows11后发现又有问题了,无法唤醒,查了半天,原来电源管理中“混合睡眠”需要关闭才可以使定时唤醒生效。
本文来自云海天,作者:supervisor,转载请注明原文链接:https://www.cnblogs.com/repus/p/16223904.html
以上是 懂事的电脑就应该自觉工作,每天自动开机、联网、睡眠、醒来…… 的全部内容, 来源链接: utcz.com/z/520426.html