Неверный дескриптор - C#

Узнай цену своей работы

Формулировка задачи:

Сделал прогу, где в Form открывается консоль. При первом запуске все норм, а при втором выдает эту ошибку
  private void Console()
        {
            // Запускаем консоль.
            if (AllocConsole())
            {
                Random r1 = new Random();
                System.Console.WriteLine("Для выхода нажмите (E).");
                do
                {
                    System.Console.ReadKey();
                    int code = r1.Next(0, 41);
                    System.Console.WriteLine(pcode.codes[code]);
                    consoleCount += 1;
                } while (consoleCount != 200);
                FreeConsole();
                Action action = () => ReceiveForProgram();
                if (InvokeRequired)
                    Invoke(action);
                else
                    action();
            }
            Thread.Sleep(2000);
        }
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        private static extern bool AllocConsole();
 
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        private static extern bool FreeConsole();

Решение задачи: «Неверный дескриптор»

textual
Листинг программы
  private void Console()
        {
            // Запускаем консоль.
            if (AllocConsole())
            {
                FreeConsole();
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы