Nachtmodus per Tastaturkürzel an- und ausschalten

rongador

Commander
Registriert
Mai 2011
Beiträge
2.354
Hi,

ich habe Google bemüht, aber keine Möglichkeit gefunden, unter Windows 10 den Nachtmodus per Tastaturkürzel an- und ausschalten zu können. Ich habe nur etwas zum Farbfilter gefunden, was nicht dasselbe ist (und auch manuell in den Einstellungen ein Kürzel aktiviert werden muss, hat aber nichts mit dem Nachtmodus zu tun).

Kennt da jemand ein Tastaturkürzel für?

Gruß
 
Du meinst den Dark Mode? Das wären die Schlüssel in der Registry (als .reg-Dateien):
Anschalten / Aktivieren:
Code:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize]
"AppsUseLightTheme"=dword:00000001

AUS / Deaktivieren:
Code:
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize]
"AppsUseLightTheme"=dword:00000000

Man könnte eine Batch schreiben, welche den aktuellen Registry-Schlüssel abfrägt und dann entsprechend überschreibt. Davon eine Verknüpfung erstellen & in den Eigenschaften ein entsprechendes Tastenkürzel festlegen.
 
Hmmm... ist schon ein Ansatz. Du meinst eine .bat-Datei, oder? In dem Fall würde sich aber (zumindest kurz) immer ein Eingabefenster öffnen, richtig?
 
Erstelle eine Batch mit folgendem Inhalt (z.B. unter C:\Programme):
Code:
@echo off
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize /v AppsUseLightTheme | find "0x1"

REM IST AN - DARK
if errorlevel 1 (
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" /v AppsUseLightTheme /t REG_DWORD /f /D 1
GOTO ENDE
)

REM IST AUS - NORMAL
if errorlevel 0 (
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" /v AppsUseLightTheme /t REG_DWORD /f /D 0
GOTO ENDE
)

:ENDE
EXIT

Erstelle auf dem Desktop eine Verknüfpung : rechte Maustaste auf die Batch > Senden an : Verknüpfung Desktop erstellen

rechte Maustaste auf die Verknüfpung > Eigenschaften > bei Tastenkombination z.B. STRG+ALT+ö halten > Übernehmen

Beim Drücken von strg+alt+ö wird nun im Explorer, Systemsteuerung usw. zwischen den Modi hin- und hergeschalten.
 
Hey, ach... nein, ich meine nicht den Wechsel zwischen dem hellen und dem dunklen Theme. Ich meine tatsächlich den "Nachtmodus" - wo der Bildschirm "oranger" wird, was die Augen am Abend schont - weisst Du, was ich meine?
 
Super, probiere ich aus. Das Beste wäre natürlich, wenn Microsoft da ein ganz normales Tastaturkürzel integrieren könnte :-D
 
Klick doch einfach unten rechts auf das Info-Symbol
und dann auf Nachtmodus. (wenn nicht angezeigt, Aktivieren)
 
Hab gerade rumgetestet. Was mir aufgefallen ist :
-der Schlüssel funktioniert auf jeden Fall:
Code:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CloudStore\Store\Cache\DefaultAccount\$$windows.data.bluelightreduction.bluelightreductionstate\Current
-die Werte sind je nach Windows-Version allerdings unterschiedlich => Blöd
-die Reg-Binary per Batch abfragen ist nicht so einfach

Hab jetzt folgenden quick&dirty Vorschlag:
-Den Schlüssel aus der Registry exportieren : z.B. AUS.reg
-Den Nachtmodus einschalten
-Registry aktualisieren und den Schlüssel aus der Registry exportieren : z.B. AN.reg
-beide Dateien in einen Ordner legen
-eine Batch mit folgendem Inhalt dort erstellen:
Code:
@echo off
if exist "%~dp0AN" (
rem file exists
"%windir%\System32\regedt32.exe" /s "%~dp0AUS.reg"
del "%~dp0AN" /F /Q
EXIT
) else (
rem file doesn't exist
"%windir%\System32\regedt32.exe" /s "%~dp0AN.reg"
echo "" > "%~dp0AN"
EXIT
)
-von der Batch eine Verknüpfung auf den Desktop senden
-in den Eigenschaften der Verknüpfung z.B. Tastenkombination STRG+ALT+ö hinterlegen > Übernehmen

die Batch prüft, ob im Ordner eine Datei AN existiert.
Falls NEIN : die Datei AN.reg wird in die Registry eingelesen und eine Datei AN erstellt
Falls JA : die Datei AUS.reg wird in die Registry eingelesen und die Datei AN gelöscht
 
Du kannst ja auch eine Dateiverknüpfung einer VBS Datei (z.B. Nachtmodus.vbs)
anlegen. Da einen Shortcut zuordnen.
Inhalt der Datei siehe unten.

-----------------------------------------------------------------------------------------
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "ms-settings:nightlight"

WScript.Sleep 2000

WshShell.SendKeys " "

WshShell.sendkeys ("%{F4}")
WScript.Sleep 2000

Wscript.quit
-----------------------------------------------------------------------------------------------
 
Zuletzt bearbeitet: (Korrektur)
Dieser Script arbeitet bei mir sicherer. (Es wird nur ein/aus geschaltet)
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "ms-settings:nightlight"

WScript.Sleep 2000

WshShell.sendkeys ("{TAB 3}")

WshShell.SendKeys " "

WshShell.sendkeys ("%{F4}")

Wscript.quit
 
@ hybridlite
Habe Deinen Vorschlag probiert. Muss bei mir noch ein Shift+Tab einfügen, damit ich auf dem Knopf lande:
Code:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "ms-settings:nightlight"

WScript.Sleep 2000

WshShell.SendKeys "+{TAB}"
WshShell.SendKeys " "
WshShell.sendkeys ("%{F4}")

WScript.Sleep 2000

Wscript.quit
Wo ich jetzt Bauchschmerzen habe : Sobald sich irgendein Fenster in den Vordergrund drängt (z.B. Termin-Erinnerung Outlook, etc.) und das Skript unkontrolliert ein Leerzeichen und Alt+F4 absendet => ob dies sicher(er) ist ^-^
 
Kurzum: Eine einfache Lösung gibt es nicht, idealerweise sollte Microsoft ein Tastenkürzel einführen.
 
Zurück
Oben