Mode Console héritée

Le mode Console hérité est un outil de compatibilité conçu pour aider les utilisateurs d’anciens outils en ligne de commande sur Windows 10. Pour tous les outils en ligne de commande qui ne s’affichent pas ou ne fonctionnent pas correctement dans l’expérience par défaut de la console Windows 10, ce mode fournit une solution grossière pour rétablir, dans le système, une version antérieure de l’expérience d’hébergement de console.

Utilisation du mode Console héritée

Pour utiliser le mode Console hérité, commencez par ouvrir une fenêtre d’hébergement de console. Cette opération s’effectue généralement en lançant l’un des interpréteurs de commandes CMD ou PowerShell.

Cliquez avec le bouton droit sur la barre de titre de l’application, puis choisissez l’option de menu Properties. Choisissez le premier onglet, Options. Cochez ensuite la case en bas de la page décrivant Use legacy console. Appuyez sur le bouton OK pour appliquer vos sélections.

Le paramètre peut être rétabli en revenant au même menu de feuille de propriétés, en décochant la case, puis en appuyant sur OK.

Remarque

Ce paramètre est appliqué globalement à toutes les sessions qui démarrent après le changement de la préférence. Les sessions déjà ouvertes ne sont pas modifiées.

Différences entre les modes

L’équipe Hôte de la console s’efforce de réduire les différences entre le mode Hérité et le mode actuel de la console pour garantir que le plus grand nombre de clients possible peuvent exécuter la version la plus à jour. Si vous rencontrez un problème qui vous oblige à utiliser la console héritée qui n’est pas documentée ici, contactez l’équipe sur le dépôt GitHub microsoft/terminal ou par le biais du Hub de commentaires pour obtenir de l’aide.

Applications 16 bits sur Windows 32 bits

Pour fonctionner, certaines applications 16 bits sur Windows 32 bits utilisent une technologie de machine virtuelle appelée NTVDM. Ces applications utilisent souvent un mode de mise en mémoire tampon d’écran graphique conjointement avec l’environnement d’hébergement de console pour fonctionner. Seule l’expérience de console héritée prend en charge ces modes de mise en mémoire tampon graphiques et les API de console supplémentaires nécessaires pour alimenter ces applications. Le système sélectionne automatiquement l’environnement de console héritée quand l’une de ces applications est lancée.

Incorporation d’IME

L’hôte de console héritée incorporait la partie suggestion de l’IME à l’intérieur de la fenêtre d’hébergement en réservant une ligne en bas de l’écran pour les suggestions. Au lieu de cela, l’environnement d’hôte de console actuel délègue cette activité au sous-système IME pour afficher une fenêtre superposée au-dessus de l’hôte de console avec des suggestions. Dans un environnement où les fenêtres superposées ne sont pas possibles (comme avec certains outils de communication à distance), l’hôte de console héritée peut être nécessaire.

Différences d’API

La principale différence connue entre l’hôte hérité et l’hôte actuel est l’implémentation d’UTF-8. L’hôte hérité a une prise en charge extrêmement rudimentaire et souvent incorrecte d’UTF-8 avec la page de codes 65001. L’hôte de console actuel bénéficie d’améliorations progressives de Windows 10, version après version, visant à perfectionner cette prise en charge. Les applications qui tentent de s’appuyer sur la prédiction d’interprétations « connues comme étant incorrectes » d’UTF-8 à partir de la console héritée peuvent se retrouver à recevoir des réponses différentes à mesure que la prise en charge est améliorée.

Les autres différences rencontrées avec les API doivent être signalées dans le dépôt GitHub microsoft/terminal ou le Hub de commentaires en vue de les trier et d’y apporter des solutions.