Warum friert meine Eingabeaufforderung unter Windows 10 ein?

146

Ich füge diese Frage hinzu, nachdem ich einen ganzen Tag lang mit dieser unglaublich frustrierenden Funktion der Windows 10-Eingabeaufforderung gerungen habe, die mich glauben ließ, dass etwas mit meinem Konsolenanwendungscode nicht stimmte. Ich hoffe es wird jemandem helfen.

Problem: Meine Konsolenanwendung scheint zufällig nicht mehr ausgeführt zu werden. Was ist los?

Shaun Rowan
quelle
2
Außerdem müssen Sie die Eingabetaste
drücken

Antworten:

269

Das Problem war schließlich eine neue Funktion der Windows 10-Konsole. Wenn Sie in Windows 10 in der Standardkonfiguration auf ein Befehlsfenster klicken, wird der Anwendungsprozess sofort angehalten, wenn versucht wird, auf die Konsole zu schreiben. In diesem Fall wurde das Befehlsfenster in den Auswahlmodus versetzt.

Sie können erkennen, dass dies geschehen ist, da der Titelleiste des Befehlsfensters das Wort "Auswählen" vorangestellt wird:

eingefrorenes Befehlsfenster

Um Ihr Programm wieder zum Laufen zu bringen, müssen Sie die Esc-Taste drücken oder auf eine andere Stelle klicken.

Um dieses seltsame Verhalten zu beseitigen, können Sie den QuickEdit-Modus deaktivieren:

Deaktivieren Sie den QuickEdit-Modus

Shaun Rowan
quelle
26
Mein Gott dankt dir! Ich beschäftige mich seit einem Jahr damit LOL. Möglicherweise müssen Sie auch die Option deaktivieren, das Terminal schließen und erneut öffnen. Zumindest funktioniert das bei mir so (andernfalls wird es automatisch wieder aktiviert.)
user2875289
3
Ich hatte einen mehrstündigen Kompilierungsjob, der aus diesem Grund immer wieder einfrieren würde. Ich bin froh, dass Sie eine Lösung veröffentlicht haben!
Joel
2
Obwohl diese Antwort dazu beigetragen hat, das Einfrieren beim Klicken zu deaktivieren, wird es durch Scrollen in der Seitenleiste ebenfalls eingefroren. Das vorherige Verhalten war einfrieren, während die Bildlaufleiste gehalten und die Ausgabe gedruckt wurde, wenn Sie die Bildlaufleiste loslassen. Irgendeine Idee, wie man zu seinem alten Verhalten zurückkehren / es auftauen kann? Esc oder Enter funktioniert nicht.
Quimnuss
6
Das ist eine sehr alte Funktion zum schnelleren Kopieren und Einfügen. Es ist nur so, dass Windows 10 damit beginnt, es standardmäßig zu
Phuclv
3
"Feature not a bug" ist der Fluch der Benutzer überall
tschwab
20

Was ich hier zu Shaun Rowans Antwort hinzufügen möchte, ist, dass Sie, damit es in allen Konsolenfenstern funktioniert , auf "Standard" anstatt auf "Eigenschaften" klicken und dort Ihre Änderungen vornehmen müssen, wie in diesem Beitrag beschrieben .

iko79
quelle
0

Ich war vor kurzem mit diesem Problem konfrontiert, als einer der Benutzer (der Quickedit auf seiner Eingabeaufforderung konfiguriert hatte) ein in Java entwickeltes Tool verwendete und das Tool beim Ausführen an der Eingabeaufforderung einfrierte.

Schließlich wurde das Problem gelöst, indem die Protokollierung im Batch-Skript wie unten gezeigt in eine Datei umgeleitet wurde:

@echo off
...
java.exe -jar mytool.jar

musste aktualisiert werden auf

java.exe -jar mytool.jar > log.txt
Priyanku
quelle
1
Für Entwickler könnte dieser Thread interessant sein. Sie können dieses Verhalten programmgesteuert mit SetConsoleMode(kernel32.dll) deaktivieren .
Groo