Im Folgenden finden Sie einige nützliche Produkte zum Ersetzen von Konsolen, die benutzerfreundlicher als cmd sind.
Wie unten kommentiert, sind alle diese Shells seit Windows 7 nur eine Schnittstelle zu conhost.exe, sogar zu Powershell. Einzelheiten lesen Was conhost.exe ist und warum ist es Laufen .
Daher ersetzen die folgenden Konsolen nur die standardmäßige visuelle Schnittstelle zu conhost, die von cmd angezeigt wird, und sind nur nützlich, wenn sie direkt als Programme aufgerufen werden. Sie können nicht indirekt aufgerufen werden, wie wenn eine konsolenausführbare Datei wie diskpart ausgeführt wird, da dies conhost aufruft und conhost über eine eigene E / A-Schnittstelle und API verfügt.
Folgendes sagt Microsoft in Windows 7 / Windows Server 2008 R2: Konsolenhost :
ConHost stellt eine permanente Änderung in der Art und Weise dar, wie Konsolenanwendungs-E / A behandelt werden. Es gibt keine Registrierungsschlüssel- oder Gruppenrichtlinieneinstellung, die Windows dazu zwingen könnte, zum Konsolenverhalten im Legacy-Modus zurückzukehren.
Die Schlussfolgerung ist, dass dies nicht möglich ist, wenn Sie die Konsole tiefer ersetzen möchten als die cmd-Schnittstelle. Microsoft hat dieses Design als Sicherheitsmaßnahme ausgewählt und wird nicht zurückkehren.
Die einzige Möglichkeit, das Verhalten von conhost zu ändern, besteht darin, einen globalen System-Hook für die conhost-API festzulegen. Ich weiß überhaupt nicht, ob dies möglich ist und niemand hat es bis jetzt getan (oder ob sie es getan haben, sagen sie es nicht). Ich glaube auch nicht, dass Microsoft Sie eine so wichtige Systemdatei wie conhost.exe durch eine gehackte Version ersetzen lässt.
Wenn das Ersetzen von cmd erforderlich ist, das sich in system32 \ cmd.exe befindet, muss man das Eigentum an der Datei übernehmen und sie dann umbenennen (cmd1.exe?), Die Exe für den Konsolenersatz in cmd.exe umbenennen und zusammen mit system32 kopieren Alle Dateien, die es benötigt, damit es funktioniert. Dies kann zu Problemen führen, wenn die Ersatzkonsole nicht alle Parameter von cmd unterstützt.
Ein anderer Ansatz, der für .bat-Dateien funktioniert, besteht darin, die neue Konsole mit ihnen zu verknüpfen. Dazu muss man den Registrierungsschlüssel bearbeiten HKEY_CLASSES_ROOT\batfile\shell\open\command
. In diesem Artikel finden Sie einige Details.
Hier ist die Liste der Konsolen:
Colorconsole
FireCMD
PowerCmd
gs.exe
PyCmd