Windows 10 Optiplex 7000通过任务计划程序调用S0睡眠的问题求助
我现在碰到个棘手的问题,想让我的Windows 10 Optiplex 7000每天晚上10点自动进入睡眠状态。我已经安装了nircmd,还在任务计划程序里创建了任务,执行一个包含命令nircmd.exe monitor async_off的.bat文件。
手动双击这个批处理文件的时候完全没问题,但如果我选择任务计划程序里的“不管用户是否登录都要运行”选项,点击运行按钮后好像啥反应都没有。我试过在批处理里加echo和whoami命令输出内容,能正常生成文件,说明批处理确实在运行,但nircmd的命令就是没生效。要是换成“只在用户登录时运行”,任务就能正常工作。
我查了whoami的输出,两种配置下结果是一样的,所以应该不是权限问题。不过问题在于,需要运行命令时登录的用户没有让电脑睡眠的权限,所以我没法只创建一个仅在该用户登录时运行的任务。
有没有人能给我出出主意?或者有没有别的命令可以调用S0睡眠模式?
(我已经试过psshutdown和rundll32.exe了,都不行,因为它们只能调用S3睡眠,而根据powercfg -a的结果,我的电脑固件不支持S3模式)
编辑:我还试过用下面这条PowerShell命令,但结果和nircmd一样,在“不管用户是否登录都要运行”的配置下没效果:powershell (Add-Type '[DllImport("user32.dll")]^public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2)
备注:内容来源于stack exchange,提问作者lucdar

