Änderungen an der Windows-Konsole in Windows Server

Beginnend mit Windows Server 2016 wurde der Konsolenhost (d. h. der zugrunde liegende Code, der alle Zeichenmodusanwendungen, einschließlich der Windows-Eingabeaufforderung, der Windows PowerShell-Eingabeaufforderung und anderer, unterstützt) in mehrfacher Hinsicht aktualisiert, um eine Reihe neuer Funktionen hinzuzufügen.

Steuerung der neuen Features

Die neue Funktionalität ist standardmäßig aktiviert, aber Sie können jedes der neuen Features ein- und ausschalten oder auf den vorherigen Konsolenhost zurücksetzen, entweder über die Eigenschaftenschnittstelle (hauptsächlich auf der Registerkarte "Optionen ") oder mit diesen Registrierungsschlüsseln (alle Schlüssel sind DWORD-Werte unter HKEY_CURRENT_USER\Console):

Registrierungsschlüssel Description
ForceV2 1 aktiviert alle neuen Konsolenfeatures; 0 deaktiviert alle neuen Features. Hinweis: Dieser Schlüssel wird nicht in Verknüpfungen gespeichert, sondern nur in diesem Registrierungsschlüssel.
Zeilenauswahl 1 aktiviert die Möglichkeit zum Markieren von Zeilen; mit 0 lässt sich nur der Blockmodus verwenden.
FilterOnPaste 1 aktiviert das neue Einfügeverhalten.
LineWrap 1 fügt beim Ändern der Größe des Konsolenfensters passende Zeilenumbrüche ein.
CtrlKeyShortcutsDisabled 0 aktiviert neue Tastenkombinationen; 1 deaktiviert sie.
Erweiterte Bearbeitungstasten 1 aktiviert alle Auswahltasten auf der Tastatur; 0 deaktiviert sie.
TrimLeadingZeros 1 kürzt führende Nullen in einer per Doppelklick vorgenommenen Auswahl; mit 0 werden die führenden Nullen beibehalten.
WindowsAlpha Legt für die Deckkraft einen Wert zwischen 30 % und 100 % fest. Verwenden Sie 0x4C bis 0xFF oder 76 bis 255, um den Wert festzulegen.
WordDelimiters Legt das Zeichen fest, auf das gesprungen wird, wenn in einem Text mithilfe von STRG+UMSCHALT+NACH-LINKS-TASTE oder STRG+UMSCHALT+NACH-RECHTS-TASTE ganze Wörter mit einem Mal markiert werden (Standardwert ist das Leerzeichen). Legen Sie diesen REG_SZ-Wert so fest, dass alle als Trennzeichen zu behandelnden Zeichen enthalten sind. Hinweis: Dieser Schlüssel wird nicht in Verknüpfungen gespeichert, sondern nur in diesem Registrierungsschlüssel.

Diese Einstellungen werden in der Registrierung für jeden einzelnen Fenstertitel unter „HKCU\Console“ gespeichert. Bei Konsolenfenstern, die über eine Verknüpfung geöffnet werden, werden diese Einstellungen in der Verknüpfung gespeichert. Wenn die Verknüpfung auf einen anderen Computer kopiert wird, werden die Einstellungen zusammen mit der Verknüpfung auf den neuen Computer übertragen. Einstellungen in Verknüpfungen setzen alle anderen Einstellungen außer Kraft, auch globale Einstellungen und Standardwerte. Wenn Sie jedoch mithilfe der Einstellung Legacykonsole verwenden auf der Registerkarte Optionen zur ursprünglichen Konsole zurückgewechselt sind, gilt diese Einstellung global und wird fortan für alle Fenster beibehalten, auch nach dem Neustart des Computers.

Sie können diese Einstellungen vorkonfigurieren oder ein Skript dafür erstellen, indem Sie die Registrierung mit einer Datei für die unbeaufsichtigte Installation entsprechend konfigurieren oder Windows PowerShell verwenden.

Für 16-Bit-NTVDM-Apps wird immer zum älteren Konsolenhost zurückgewechselt.

Note

Wenn die neuen Konsoleneinstellungen bei Ihnen zu Problemen führen und sich diese nicht mit den hier detailliert aufgelisteten Optionen lösen lassen, können Sie jederzeit zur ursprünglichen Konsole zurückwechseln. Dazu legen Sie für die Einstellung „ForceV2“ den Wert 0 fest, oder Sie verwenden auf der Registerkarte Optionen das Steuerelement Legacykonsole verwenden.

Konsolenverhalten

Sie können die Größe des Konsolenfensters nun nach Belieben ändern, indem Sie einfach eine Kante mit der Maus „anfassen“ und ziehen. Bildlaufleisten werden nur angezeigt, wenn Sie Fensterabmessungen manuell festlegen (mithilfe der Registerkarte "Layout " in "Eigenschaften") oder wenn die längste Textzeile im Puffer breiter als die aktuelle Fenstergröße ist.

Das neue Konsolenfenster unterstützt jetzt Zeilenumbrüche. Wenn Sie jedoch mithilfe der Konsolen-APIs den Text in einem Puffer geändert haben, behält die Konsole den Text so bei, wie er ursprünglich eingefügt wurde.

Das Konsolenfenster kann jetzt halbtransparent dargestellt werden (bis zu einer Mindesttransparenz von 30 %). Sie können die Transparenz über das Menü „Eigenschaften“ oder mithilfe der folgenden Tastaturbefehle anpassen:

Um dies zu tun: Tastenkombination:
Transparenz erhöhen STRG+UMSCHALT+Plus (+) oder STRG+UMSCHALTT+Mausrad nach oben drehen
Transparenz verringern STRG+UMSCHALT+Minus (-) oder STRG+UMSCHALTT+Mausrad nach unten drehen
Vollbildmodus umschalten ALT+EINGABE

Selection

Es gibt viele neue Möglichkeiten zum Auswählen von Text und Zeilen sowie zum Markieren von Text und zum Verwenden des Pufferverlaufs. In der Konsole wird versucht, Konflikte mit anderen Anwendungen zu vermeiden, bei denen die gleichen Tastenkombinationen verwendet werden.

Für Entwickler

Wenn ein Konflikt auftritt, kannst du in der Regel mithilfe der SetConsoleMode()-API steuern, mit welchem Verhalten die Anwendung auf die Nutzung der Modi für Zeileneingaben, verarbeitete Eingaben und Echoeingaben reagiert. Wenn Sie den Modus für verarbeitete Eingaben verwenden, gelten die unten aufgeführten Tastenkombinationen. In anderen Modi müssen diese von Ihrer Anwendung behandelt werden. Alle hier nicht aufgeführten Tastenkombinationen funktionieren genauso wie in den vorherigen Versionen der Konsole. Sie können auch versuchen, Konflikte mit verschiedenen Einstellungen auf der Registerkarte "Optionen " zu lösen. Wenn alles andere fehlschlägt, können Sie immer zur ursprünglichen Konsole zurückkehren.

Sie können jetzt auch außerhalb des QuickEdit-Modus einen Textabschnitt durch Klicken und Ziehen markieren. Genauso wie in Editor können Sie Text nun zeilenübergreifend markieren, und zwar nicht nur als rechteckigen Textblock. Für Kopiervorgänge brauchen Sie die Zeilenumbrüche nicht mehr zu entfernen. Neben dem Markieren von Textabschnitten durch Klicken und Ziehen stehen die folgenden Tastenkombinationen zur Verfügung:

Textauswahl

Um dies zu tun: Tastenkombination:
Cursor um ein Zeichen nach links verschieben und die Markierung erweitern UMSCHALT+LINKSPFEIL
Cursor um ein Zeichen nach rechts verschieben und die Markierung erweitern UMSCHALT+NACH-RECHTS-TASTE
Text ausgehend von der Einfügemarke Zeile für Zeile aufsteigend markieren UMSCHALT+NACH-OBEN-TASTE
Textmarkierung ausgehend von der Einfügemarke um eine Zeile nach unten erweitern UMSCHALT+NACH-UNTEN-TASTE
Wenn sich der Cursor in der gerade bearbeiteten Zeile befindet, erweitern Sie durch einmalige Ausführung dieses Befehls die Markierung bis zum letzten Zeichen der Eingabezeile. Verwenden Sie den Befehl ein zweites Mal, um die Markierung bis zum rechten Rand zu erweitern. SHIFT+END
Wenn sich der Cursor nicht in der gerade bearbeiteten Zeile befindet, verwenden Sie diesen Befehl, um den gesamten Text von der Einfügemarke bis zum rechten Rand auszuwählen. SHIFT+END
Wenn sich der Cursor in der gerade bearbeiteten Zeile befindet, erweitern Sie durch einmalige Ausführung dieses Befehls die Markierung bis zum Zeichen unmittelbar hinter der Eingabeaufforderung. Verwenden Sie den Befehl ein zweites Mal, um die Markierung bis zum rechten Rand zu erweitern. SHIFT+HOME
Wenn sich der Cursor nicht in der gerade bearbeiteten Zeile befindet, verwenden Sie diesen Befehl, um die Auswahl auf den linken Rand zu erweitern. SHIFT+HOME
Markierung um den auf dem Bildschirm angezeigten Inhalt nach unten erweitern UMSCHALT+BILD-AB
Markierung um den auf dem Bildschirm angezeigten Inhalt nach oben erweitern UMSCHALT+BILD-AUF
Markierung um ein Wort nach rechts erweitern. (Sie können mit dem Registrierungsschlüssel „WordDelimiters“ die Trennzeichen festlegen, die ein Wort definieren.) STRG+UMSCHALT+NACH-RECHTS-TASTE
Die Markierung um ein Wort nach links erweitern CTRL+SHIFT+HOME
Markierung bis zum Anfang des Bildschirmpuffers erweitern CTRL+SHIFT+END
Den gesamten Text nach der Eingabeaufforderung markieren, wenn sich der Cursor in der aktuellen Zeile befindet und die Zeile nicht leer ist CTRL+A
Markieren des gesamten Puffers, wenn sich der Cursor nicht in der aktuellen Zeile befindet CTRL+A

Bearbeiten von Text

Sie können nun mithilfe von Tastaturbefehlen in der Konsole Text kopieren und einfügen. STRG+C hat jetzt zwei Funktionen. Wenn bei der Verwendung des Tastaturbefehls kein Text markiert ist, wird wie gewohnt der BREAK-Befehl gesendet. Wenn Text markiert ist, wird dieser Text durch die erste Verwendung des Befehls kopiert und die Markierung aufgehoben. Die zweite Verwendung sendet den BREAK-Befehl. Außerdem können folgende Befehle zum Bearbeiten von Text verwendet werden:

Um dies zu tun: Tastenkombination:
Text in die Befehlszeile einfügen CTRL+V
Den markierten Text in die Zwischenablage kopieren STRG+EINFG
Den markierten Text in die Zwischenablage kopieren; BREAK senden CTRL+C
Text in die Befehlszeile einfügen UMSCHALT+EINFG

Markierungsmodus

Wenn Sie jederzeit in den Markierungsmodus wechseln möchten, klicken Sie mit der rechten Maustaste auf eine beliebige Stelle in der Titelleiste der Konsole, zeigen Sie auf "Bearbeiten", und wählen Sie " Markieren " aus dem daraufhin geöffneten Menü aus. Sie können auch STRG+M eingeben. Wenn der Markierungsmodus aktiviert ist, verwenden Sie die ALT-TASTE, um den Beginn einer Markierung mit Zeilenumbruch anzugeben. (Wenn Auswahl des Zeilenumbruchs aktivieren deaktiviert ist, wird im Markierungsmodus der Text als Block markiert.) Wenn der Markierungsmodus aktiviert ist, werden mit STRG+UMSCHALT+NACH-LINKS-TASTE oder STRG+UMSCHALT+NACH-RECHTS-TASTE einzelne Buchstaben markiert und nicht ganze Wörter wie im normalen Modus. Zusätzlich zu den Auswahltasten im Abschnitt "Text bearbeiten " stehen diese Kombinationen im Markierungsmodus zur Verfügung:

Um dies zu tun: Tastenkombination:
Markierungsmodus aufrufen, um den Cursor im Fenster verschieben zu können CTRL+M
Beginn einer Markierung mit Zeilenumbruch im Markierungsmodus, zusammen mit anderen Tastenkombinationen ALT
Den Cursor in die angegebene Richtung verschieben PFEILTASTEN
Den Cursor um eine Seite in die angegebene Richtung verschieben SEITENtasten
Den Cursor an den Anfang des Puffers verschieben CTRL+HOME
Den Cursor an das Ende des Puffers verschieben CTRL+END
Um dies zu tun: Tastenkombination:
Im Ausgabeverlauf eine Zeile nach oben springen STRG+NACH-OBEN-TASTE
Im Ausgabeverlauf eine Zeile nach unten springen STRG+NACH-UNTEN
Anzeigebereich an den Anfang des Puffers verschieben (wenn die Befehlszeile leer ist) oder alle Zeichen links vom Cursor löschen (wenn die Befehlszeile nicht leer ist) CTRL+HOME
Anzeigebereich zur Befehlszeile verschieben (wenn die Befehlszeile leer ist) oder alle Zeichen rechts vom Cursor löschen (wenn die Befehlszeile nicht leer ist) CTRL+END

Weitere Tastaturbefehle

Um dies zu tun: Tastenkombination:
Dialogfeld „Suchen“ öffnen CTRL+F
Konsolenfenster schließen ALT+F4