Sie können WinAPI-Aufruf SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2)
verwenden, wobei HWND_BROADCAST = 0xFFFF
, WM_SYSCOMMAND = 0x0112
und SC_MONITORPOWER = 0xF170
. Die 2
bedeutet, dass die Anzeige abgeschaltet wird.
Es gibt mehrere Möglichkeiten, den Aufruf durchzuführen:
Separate executable. Sie können ihn über ein Skript, eine Befehlszeile, ein Ausführen-Fenster, eine Verknüpfung (*.lnk
) usw. starten. Beachten Sie, dass Shortcuts mit einem Tastaturkürzel aufgerufen werden können. Die ausführbare Datei kann in C oder C++ oder über P/Invoke in .NET-Sprachen (C# oder PowerShell ) oder in vielen anderen Sprachen geschrieben sein, die eine Fremdsprachenschnittstelle haben (z.B. JNI in Java).
AutoHotkey script . Für einen Nicht-Programmierer ist dieser Weg wahrscheinlich einfacher. Um Anpassungen vorzunehmen, ist noch etwas Skripting erforderlich. Dieses Skript schaltet den Monitor unter Win + M aus:
Beachten Sie die Zeitüberschreitung vor dem Aufruf von SendMessage
im AutoHotkey-Skript. Es gibt dem Benutzer die Möglichkeit, Tasten freizugeben (für den Fall, dass ihre Freigabe den Monitor wieder aufwecken würde). Vergessen Sie das nicht, auch wenn Sie den Aufruf von einem Skript in einer anderen Sprache aus vornehmen.
Weitere Informationen finden Sie in der Dokumentation zu SendMessage
function , WM_SYSCOMMAND
message und AutoHotkey SendMessage
. Es könnte von Interesse sein, dass seit Windows 8 die Verwendung der gleichen Methode zum Einschalten des Monitors nicht funktioniert, aber es gibt eine Abhilfe.