Почему у моего консольного приложения есть история команд?

Я написал консольное приложение, которое по сути является Console.ReadLine () - Loop. Когда приложение ожидает ввода, нажатие клавиши со стрелкой вверх выполняет итерацию по всем предыдущим строкам ввода. Мое приложение не содержит кода для этой функции. Какая часть Windows это обеспечивает? Как мне его отключить?

Я могу только представить, что это либо функция подсистемы консоли, либо реализованная в Console.ReadLine ().

Вот пример кода, демонстрирующего описанное поведение:

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string input;
            do
            {
                input = System.Console.ReadLine();
            } while (input != "exit");
        }
    }
}

Я бы хотел хотел бы отключить функцию истории на данный момент и повторно реализовать ее позже, используя свой собственный код. Текущее поведение слишком ограничено.

19
задан TheFogger 7 August 2011 в 14:02
поделиться