Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80

Не выводит текст в консоль, открывается пустая консоль без текста

27.06.2017, 19:24. Показов 5041. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приложение должно вызывать консоль при выполнении каких то условий.

В консоль записывается текст и ReadKey чтобы консоль не закрывалась.


Вроде бы все отлично консоль появляется, но она пустая, в ней нет абсолютно нечего.

Написал так

C#
1
2
3
4
5
6
7
8
9
10
11
12
if (AllocConsole())
                    {
 
                        Console.ForegroundColor = ConsoleColor.Green;
                  
                        Console.WriteLine("Тут текст");
                        Console.WriteLine("Тут текст");
                        Console.WriteLine("Тут текст");
                        Console.ReadLine();
                        Console.ReadKey(true);
                        FreeConsole();
                    }
C#
1
2
3
4
5
6
7
[DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool AllocConsole();
 
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool FreeConsole();
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.06.2017, 19:24
Ответы с готовыми решениями:

Вывод текст в консоль (не получается вывести текст в консоль; попытка была в разделе menu, но вывелся ужас)
d_d1 segment ;начало сегмента данных m1 db 23, '=========MENU=========', 23, '$' m2 db 23, '| 1- slodjenie |', 23, '$' m3 db...

Программа выводит ответ и в консоль и в файл, хотя нужно только в консоль
когда выбираю вывести в консоль, программа выводит ответ и в консоль, и в файл #include <stdio.h> #define SIZE 101 ...

Не выводит текст в консоль
Программа, скомпиленная в Visual C++, не выводит текст. Эта же программа, скомпиленная в MinGW выводит. Почему? #include...

9
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
27.06.2017, 22:58
А зачем в консольном приложении использовать WinApi для создания консоли?
1
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80
27.06.2017, 23:07  [ТС]
Цитата Сообщение от IamRain Посмотреть сообщение
А зачем в консольном приложении использовать WinApi для создания консоли?
Это win form а не консольное.
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
27.06.2017, 23:11
Тогда используйте WriteConsole function
0
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80
27.06.2017, 23:19  [ТС]
Цитата Сообщение от IamRain Посмотреть сообщение
Тогда используйте WriteConsole function
Мне это не подходит (
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
27.06.2017, 23:27
Ну если используются WinApi для создания консоли и уничтожения консоли, то логично будет использовать и средства WinApi
для вывода сообщения в консоль.
Можно попробовать задействовать Powershell (System.Management.Automation.dll).
0
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80
27.06.2017, 23:33  [ТС]
Цитата Сообщение от IamRain Посмотреть сообщение
Ну если используются WinApi для создания консоли и уничтожения консоли, то логично будет использовать и средства WinApi
для вывода сообщения в консоль.
Можно попробовать задействовать Powershell (System.Management.Automation.dll).
А можно пример кода?

Лучше чтобы еще отсчет шел до закрытия консоли.

Но главная проблема то что текста в ней нет.
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
28.06.2017, 00:14
C PS полагаю тоже не выйдет, можно выполнить команды, эквивалентные командам powershell-а, но если надо открыть окно, и динамически выводить туда сообщения, это то, где мы были вначале.
Но можно запустить отдельный процесс, и делать что-то типа того:
C#
1
2
3
var process = new Process();
//....
process.StandardInput.WriteLine("Test");
Пример можно посмотреть вот здесь.

Добавлено через 18 минут
Хотя не, в этом случае тут тоже не прокатит. Поскольку чтобы можно было перенаправлять ввод в сторонний процесс, его
ProcessStartInfo.UseShellExecute должен быть false, то есть процесс должен быть запущен без отдельного окна.
Имхо, только WinApi.
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
28.06.2017, 00:41
вопрос чисто для себя, для саморазвития, а на кой в wf выводить что-то в консоль? могу понять в файл(вариации на тему логирования), могу понять в mbox(коммуникация с юзверем), но консоль то зачем?!
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
28.06.2017, 00:47
Цитата Сообщение от Diamante Посмотреть сообщение
вопрос чисто для себя, для саморазвития, а на кой в wf выводить что-то в консоль?
Ну, например, для трассировки очень удобно, если поставишь в свойствах проекта как консольное, то появится отдельное консольное окно, куда можешь выводить инфу в рантайме. Очень наглядно получается.
Хотя не знаю, для чего ТС-у это.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.06.2017, 00:47
Помогаю со студенческими работами здесь

Code::Blocks не выводит текст в консоль
когда запускаю любой программный код выдает ошибку

Написать программу, которая выводит в консоль текст звездочками(С++)
Напишите плиз программу для C++ чтоб выводить текст звездочками(*)

Добавленная консоль в Win32 окно не выводит текст printf
Здравствуйте! Создаю консоль такой функцией: void ConsoleClass::CreateConsole(char *consoleName) { int hConHandle = 0; ...

Вывести текст в базовую консоль ПК (без ОС)
Здравствуйте! Подскажите пожалуйста, можно ли вывести строку "Hello World!" без операционной системы? Т.е. я скомпилированный файл запущу...

Консоль - Вывод текста без остановки
Проблема в том, что когда пишу код типа этого: Writeln('Lol'); Readln; то программа дальше не продолжает свои действия, требует...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru