Verhindern Sie, dass Fenster 10 nur für das Schließen des nächsten Deckels schlafen

622
Silver Duck

Manchmal lasse ich meinen Computer (Lenovo Laptop unter Windows 10) Sachen, die eine Weile dauern (z. B. wissenschaftliche Berechnungen). Wenn das der Fall ist, möchte ich den Deckel schließen können, ohne dass er schlafen geht.

Das Problem ist, dass ich auch gerne das Standardverhalten beibehalten möchte, bei dem es meistens in den Ruhezustand geht, wenn ich es schließe.

Ich möchte, dass es funktioniert, wenn ich nichts tue und den Deckel schließe, geht er schlafen. Wenn ich jedoch eine beliebige Tastenkombination drücke, wird das nächste Mal, wenn ich den Deckel schließe, ignoriert und bleibt wach, bis ich ihn wieder öffne.

Im Idealfall wäre dieses Verhalten gleich oder nicht. Ich weiß, dass ich das unter «Power Management» ändern kann, aber ich mache das oft, und es wäre schön, wenn man eine Abkürzung dafür hätte.

Kann sich irgendjemand einen Weg vorstellen, um dies zu tun, oder einen Trick, um dieses Verhalten nachzuahmen?

Danke im Voraus.

1

1 Antwort auf die Frage

0
harrymc

Um zu verhindern, dass der Computer schläft, können Sie ein Programm wie Koffein oder Insomnia verwenden .

Alternativ können Sie den Ruhezustand des Deckels schließen und ihn später wieder aktivieren. Wenn dies manuell zu aufwendig ist, können Sie dies mit einem Befehl tun, den Sie in eine auf dem Desktop gespeicherte Stapeldatei einfügen können.

In dieser Antwort finden Sie das Toggle-Skript zum Deaktivieren und Wiederherstellen der Aktion zum Schließen des Deckels auf das, was vorher war (aber die anderen Antworten könnten auch relevant sein).

Hier ist eine leicht modifizierte Version des Skripts:

@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% 
Genau das habe ich gebraucht, vielen Dank! Ich werde es wahrscheinlich leicht herausfinden, aber jeder kennt eine Möglichkeit, eine Batchdatei über eine benutzerdefinierte globale Verknüpfung auszuführen. Silver Duck vor 5 Jahren 0
Was meinen Sie mit "benutzerdefinierte globale Verknüpfung"? harrymc vor 5 Jahren 0
Ich meine eine benutzerdefinierte Tastenkombination, die ich jederzeit drücken konnte, um das Skript zu starten, ohne auf die Batchdatei klicken zu müssen. Silver Duck vor 5 Jahren 0
[AutoHotkey] (https://autohotkey.com/) ist Ihr Freund. Siehe auch [diesen Beitrag] (https://stackoverflow.com/questions/2035193/how-to-run-a-powershell-script). harrymc vor 5 Jahren 0