Bildschirmauflösung auf der Kommandozeile anzeigen und ändern

    Wenn man die aktuelle Bildschirmauflösung in einem Script oder auf der Kommandozeile auslesen möchte, dann geht das recht einfach mit WMI. Will man sie jedoch verändern, dann bietet Windows dafür kaum brauchbare Mittel an.

    Für die automatisierte Bearbeitung der Bildschirmauflösung gibt es nicht allzu viele Anwendungsfälle. Am ehesten tritt die Notwendigkeit dafür unter Server Core auf, der keine GUI-Mittel zu diesem Zweck bietet. Die meisten Tipps bestehen darin, diverse Registry-Schlüssel von Hand zu setzen.

    Werte für die Anzeige per WMI auslesen

    Möchte man die Werte für die Bildschirmdarstellung ermitteln, dann erhält man diese Daten relativ einfach über WMI. Auf der Kommandozeile lässt sich dafür wmic nutzen, das ein eigenes Alias namens desktopmonitor für diesen Zweck bereitstellt:

    wmic desktopmonitor get screenheight, screenwidth

    Die Entsprechung dazu würde in PowerShell unter Verwendung von Get-WmiObject (Alias gwmi) so aussehen:

    gwmi Win32_DesktopMonitor | select ScreenHeight, ScreenWidth | fl

    Wie immer hat die Powershell-Variante den Vorzug, dass man die ermittelten Werte mit Hilfe von Vergleichsoperatoren prüfen oder an zur Weiterverarbeitung an andere Cmdlets weiterreichen kann:

    $sr = gwmi Win32_DesktopMonitor
    if($sr.ScreenWidth -lt 1280) {write "Monitor zu klein"}

    Auflösung ändern

    Schwieriger wird es, wenn man die Bildschirmauflösung von der Kommandozeile oder aus einem Script ändern möchte. Hier kommt man ohne externe Tools schlecht zurecht. Mit wmic gelangt man gar nicht ans Ziel und in PowerShell artet diese Aufgabe in aufwändiges Scripting aus.

    Am einfachsten klappt es mit der schon ziemlich betagten Freeware qres.exe, die aber auch unter neueren Versionen von Windows ihren Dienst tut. Beispielsweise ändert

    qres.exe /x:1280 /y:1024

    die Auflösung zu 1280 x 1024. Damit man weiß, welche Werte aktuell eingestellt sind, kann man qres mit dem Schalter /s starten. Bei Verwendung von /r zeigt es alle verfügbaren Modi an, so dass man nicht experimentieren muss, um herauszufinden, welche überhaupt unterstützt werden.

    Unter Windows Server Core 2008 (R2) existiert noch eine weitere Option, wenn man den kostenlosen Core Configurator verwendet, um das System zu verwalten. Er erlaubt auch die Änderung der Bildschirmauflösung, die allerdings erst nach einem Neustart greift.

    1 Kommentar

    Bild von Volmar
    Volmar sagt:
    27. Februar 2015 - 15:20

    Vielen Dank für den Tipp, welche ich für meinen Photobooth gut brauchen kann!