Freigeben über


Legacykonsolenmodus

Der Legacykonsolenmodus ist ein Kompatibilitätstool, das Benutzern älterer Befehlszeilentools unter Windows 10 hilft. Für jedes Befehlszeilentool, das in der standardmäßigen Windows 10-Konsolenumgebung nicht ordnungsgemäß angezeigt oder ausgeführt wird, bietet dieser Modus eine grob abgestimmte Lösung, um das System wieder auf eine ältere Version der Konsolenhostingumgebung zurück zu treten.

Verwenden des Legacykonsolenmodus

Um den Legacykonsolenmodus zu verwenden, öffnen Sie zuerst ein Konsolenhostingfenster. Dies geschieht in der Regel durch Starten eines der Befehlsdolmetscher CMD oder PowerShell.

Klicken Sie mit der rechten Maustaste auf die Titelleiste der Anwendung, und wählen Sie die Properties Menüoption aus. Wählen Sie die erste Registerkarte aus. Options Aktivieren Sie dann das Kontrollkästchen unten auf der Seite, die beschreibt Use legacy console. Drücken Sie die OK Schaltfläche, um sie anzuwenden.

Die Einstellung kann wiederhergestellt werden, indem sie zum gleichen Eigenschaftenblattmenü zurückkehren und das Kontrollkästchen dann OKdeaktivieren.

Hinweis

Diese Einstellung wird global auf alle Sitzungen angewendet, die gestartet werden, nachdem die Einstellung geändert wurde. Bereits geöffnete Sitzungen werden nicht geändert.

Unterschiede zwischen Modi

Das Konsolenhostteam ist bestrebt, Unterschiede zwischen der Legacy- und den aktuellen Konsolenmodi zu minimieren, um sicherzustellen, dass so viele Kunden wie möglich die up-to-date-Version ausführen können. Wenn ein Problem aufgetreten ist, bei dem Sie die ältere Konsole verwenden müssen, die hier nicht dokumentiert ist, wenden Sie sich bitte an das Team im GitHub-Repository von Microsoft/Terminal oder über den Feedback-Hub , um Unterstützung zu erhalten.

16-Bit-Anwendungen unter 32-Bit-Windows

Einige 16-Bit-Anwendungen unter 32-Bit-Windows verwenden eine virtuelle Computertechnologie, um NTVDM zu betreiben. Häufig verwenden diese Anwendungen einen grafischen Bildschirmpuffermodus in Verbindung mit der Konsolenhostingumgebung, um zu arbeiten. Nur die Ältere Konsolenoberfläche unterstützt diese grafischen Puffermodi und die zusätzliche Konsolen-API-Unterstützung, die für die Leistung dieser Anwendungen erforderlich ist. Das System wählt automatisch die Legacykonsolenumgebung aus, wenn eine dieser Anwendungen gestartet wird.

IME Embedding

Der ältere Konsolenhost hat den Vorschlagsteil des IME im Hostingfenster eingebettet, indem eine Zeile am unteren Bildschirmrand für Vorschläge reserviert wird. Die aktuelle Konsolenhostumgebung delegiert diese Aktivität stattdessen an das IME-Subsystem, um ein Überlagerungsfenster über dem Konsolenhost mit Vorschlägen anzuzeigen. In einer Umgebung, in der Überlagerungsfenster nicht möglich sind (z. B. mit bestimmten Remotingtools), ist möglicherweise der ältere Konsolenhost erforderlich.

API-Unterschiede

Der haupt bekannte Unterschied zwischen Legacy und Current ist die Implementierung von UTF-8. Der Legacyhost verfügt über äußerst rudimentäre und häufig falsche Unterstützung von UTF-8 mit Codepage 65001. Der aktuelle Konsolenhost enthält inkrementelle Verbesserungen der Release over-Release von Windows 10, um diese Unterstützung zu verbessern. Anwendungen, die versuchen, sich auf die Vorhersage von "bekannten falschen" Interpretationen von UTF-8 aus der älteren Konsole zu verlassen, erhalten verschiedene Antworten, da die Unterstützung verbessert wird.

Andere Unterschiede mit APIs sollten dem GitHub-Repository von Microsoft/Terminal oder über den Feedback-Hub zur Triage und möglichen Korrekturen gemeldet werden.