Как сделать чтобы консоль не закрывалась c

Добавил пользователь Алексей Ф.
Обновлено: 19.09.2024

Чтобы консоль автоматически закрывалсь при остановке отладки, нужно в Visual Studio включите параметр Автоматически закрыть консоль при остановке отладки.

Находится он: Средства - Параметры - Отладка - Общие

Amney

Чтобы консоль автоматически закрывалсь при остановке отладки, нужно в Visual Studio включите параметр Автоматически закрыть консоль при остановке отладки.

Находится он: Средства - Параметры - Отладка - Общие

Это типо если отладка норм прошла, без паники, то она закроется, а если там проблемы какие - то с отладкой, то консоль не закроется?)

Командная строка, будучи запущенной, закроется только тогда, когда пользователь нажмет кнопку завершения работы или выполнит в ней команду exit. Но бывает и такое, что после командная строка закрывается сама, не сообщая пользователю о результатах отработанного сценария и не сообщая о причинах закрытия. Как правило, с таким поведением консоли приходится сталкиваться при выполнении скриптов — CMD или BAT -файлов.

Это вполне нормально, но иногда нужно, чтобы после отработки такого скрипта консоль не закрывалась автоматически, а ждала ввода следующей команды.

Ну что же, понудить ее изменить свое поведения очень просто. Самый простой способ — это добавить в конец командного файла команду pause или специальный ключ, запускающую копию командной строки.

Команда pause

Главное, чтобы у вас имелись права на редактирование этого самого скрипта.

Отройте скрипт Блокнотом или любым другим текстовым редактором и добавьте в самый конец кода команду pause или cmd /k.

Команда cmd /k

Это два разных способа и работают они по-разному.

CMD

Команда cmd /k работает несколько иначе.

Будучи добавлена в конец сценария, она как-бы перезапускает консоль, выводя стандартное приглашение ввести новую команду.

Cmd /k

Если же добавить cmd /k в середину кода, его выполнение будет прервано и прекращено.

В этом основная разница между этими командами.

Тонкая настройка командной строки

Если нет желания возиться с каждым командным файлом, отредактируйте параметры работы самой командной строки.

Для этого открываем командой regedit редактор реестра и разворачиваем ветку:

HKCR\batfile\shell\open\command

В правой колонке меняем значение параметра по умолчанию с "%1" %* на cmd.exe /k "%1" %*.

RegEdit

Тоже самое проделываем с параметром по умолчанию в ветке HKCR\cmdfile\shell\open\command , для командных файлов формата CMD .

RegEdit

Вот и всё, отныне командная строка будет закрываться только по решению юзера, если только в сценарий не прописана команда exit .

Конфигурация компьютера
Процессор: Intel Pentium Dual Core E2180 @ 2.00GHz
Материнская плата: Gigabyte P35-DS3L
Память: 2x1GB DDR2-SDRAM Samsung
HDD: Seegate IDE 250Gb
Видеокарта: XFX GeForce 8500GT

Когда .exe или .bat запускаешь, они свои черные окна сразу закрывают и результат не увидеть. Как сделать, чтобы они не закрывались автоматически?

-------
"640 K ought to be enough for anybody" Bill Gates, 1981

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Конфигурация компьютера
Процессор: Intel Pentium Dual Core E2180 @ 2.00GHz
Материнская плата: Gigabyte P35-DS3L
Память: 2x1GB DDR2-SDRAM Samsung
HDD: Seegate IDE 250Gb
Видеокарта: XFX GeForce 8500GT

CyberDaemon нет, то же самое.
amel27 галку снял, не помогает. А если этот дефолт запустить, то что будет? У меня выдает ошибку.

NordWest
А ты как делал?
Пуск->выполнить->CMD запускает окно консоли. Если из этого окна уже запускать всякие .exe или .bat, то окно не закроется. Единственный минус - неудобно, надо помнить команды DOS

-------
"640 K ought to be enough for anybody" Bill Gates, 1981

Конфигурация компьютера
Процессор: Intel Pentium Dual Core E2180 @ 2.00GHz
Материнская плата: Gigabyte P35-DS3L
Память: 2x1GB DDR2-SDRAM Samsung
HDD: Seegate IDE 250Gb
Видеокарта: XFX GeForce 8500GT

CyberDaemon, ааа, я тебя не правильно понял просто. Да, так конечно будет оставаться, я так и делаю сейчас. Но из cmd можно только локально выполнить файлы, во всяком случае я не знаю как это сделать с файлами в сети.


Чтобы окно программы не закрывалось после завершения ее работы, достаточно в конце добавить одну строчку (после кода всей программы). Есть несколько вариантов:

1. Кросплатформенный (Windows, Linux, …)
Используем cin из библиотеки iostream

using namespace std;

int main ()
<
int i = 0;
cout > i;
return 0;
>

После выполнения вышеприведенного кода программа не закроется, а будет ждать ввода. Только после ввода числа (или символа) программа завершится.

Но можно написать программу и таким образом, чтобы она завершалась после нажатия любой клавиши. В этом случае используем функцию cin.get() из библиотеки iostream .

using namespace std;

int main ()
<
int i = 0;
cout system и передаем ей параметр “PAUSE” из библиотеки stdlib.h . Не рекомендуется использовать данный способ!

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Privacy Overview

Читайте также: