時々、コンピューター (Windows 10 搭載の Lenovo ラップトップ) に、時間のかかる作業 (科学計算など) を実行させます。その場合、スリープ状態にならずに蓋を閉じることができるようにしたいと思います。
問題は、ほとんどの場合、閉じたときにスリープ状態になるデフォルトの動作も維持したいということです。
私が望む動作は、何もせずに蓋を閉じるとスリープ状態になるというものです。ただし、任意のキーの組み合わせを押すと、次に蓋を閉じたときには無視され、再び蓋を開くまで起動したままになります。
理想的には、この動作は、プラグを差し込んでも差し込んでいなくても同じです。「電源管理」で変更できることは知っていますが、頻繁に変更するので、ショートカットがあると便利です。
それを実行する方法、またはこの種の動作をエミュレートするトリックを誰か思いつきますか?
前もって感謝します。
答え1
コンピュータがスリープ状態にならないようにするには、次のようなプログラムを使用します。 カフェイン または 不眠症。
あるいは、カバーを閉じたときにスリープを無効にして、後で再度有効にすることもできます。手動で行うのが面倒な場合は、デスクトップに保存されているバッチ ファイルにコマンドを入力して実行できます。
蓋を閉じる動作を無効にしたり、以前の状態に戻したりするには、トグルスクリプトを参照してください。 この答え (ただし、他の回答も関連している可能性があります)。
以下はスクリプトを少し変更したバージョンです:
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims=:(" %%i in ('powercfg /GETACTIVESCHEME') do set ACTIVESCHEME=%%i
for /f "tokens=2 delims=:(" %%i in ('powercfg -q %ACTIVESCHEME% SUB_BUTTONS LIDACTION ^| findstr "[0-9a-z]*-[0-9a-z]*-[0-9a-z]*-[0-9a-z]*-[0-9a-z]*"') do set FULLPATH=!FULLPATH! %%i
for /f "tokens=2 delims=:(" %%i in ('powercfg /q %FULLPATH% ^| findstr "[0-9]x[0-9]*"') do (
set CURRENTSETTINGAC=!CURRENTSETTINGDC!
set CURRENTSETTINGDC=%%i
)
set CURRENTSETTINGAC=%CURRENTSETTINGAC:~-1%
set CURRENTSETTINGDC=%CURRENTSETTINGDC:~-1%
powercfg -SETACVALUEINDEX %FULLPATH% 0
powercfg -SETDCVALUEINDEX %FULLPATH% 0
powercfg /s %ACTIVESCHEME%
pause Waiting to re-enable sleep on lid close ...
powercfg -SETACVALUEINDEX %FULLPATH% %CURRENTSETTINGAC%
powercfg -SETDCVALUEINDEX %FULLPATH% %CURRENTSETTINGDC%
powercfg /s %ACTIVESCHEME%