|
0 / 0 / 0
Регистрация: 19.03.2018
Сообщений: 23
|
|
При нажатии кнопки закрытия консольного приложения, скрывать его вместо закрытия13.10.2020, 09:07. Показов 1991. Ответов 7
Метки нет (Все метки)
0
|
|
| 13.10.2020, 09:07 | |
|
Ответы с готовыми решениями:
7
При нажатии кнопки закрытия окна, оно должно сворачиваться, а при нажатии на сворачивание - закрываться Событие закрытия консольного приложения
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,927
|
|
| 13.10.2020, 10:21 | |
|
В общем случае так сделать нельзя. Окно эмулятора терминала принадлежит не вашей программе, а собственно эмулятору терминала.
Более того, как вы собираетесь отслеживать окно эмулятора терминала если приложение запускается без него? Скажем, в составе скрипта или с перенаправленным вводом-выводом. Если вы хотите именно управления окнами, так создавайте оконное приложение. Добавлено через 1 минуту Ах да, чуть не забыл. В каких-то частных случаях такое сделать наверняка можно, но все равно получится криво и костыльно. Просто потому что консольные приложения не предназначены отслеживать конкретное устройство вывода.
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 13.10.2020, 10:50 | ||
|
https://docs.microsoft.com/en-... r-function Закрытие консоли ты можешь отследить, но не можешь запретить.
0
|
||
|
Злостный нарушитель
10359 / 5774 / 1275
Регистрация: 12.03.2015
Сообщений: 26,687
|
|
| 13.10.2020, 12:40 | |
|
У меня вопрос: а НАХРЕНА ЭТО тебе понадобилось?!
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 13.10.2020, 13:01 | |||||||
|
нельзя отменить закрытие консоли. не важно, обработал ты сигнал Ctrl+C или нет. в любом случае система даёт тебе порядка 7 секунд, по истечению которых процесс будет уничтожен. фрагмент из боевого кода (закрытие консоли по нажатию на крестик, ктрл+с, и тп)
что бы дать возможность основному приложению успеть завершить свою работу. если за 5 секунд не уложится - будет принудительно уничтожен. штука вся в том, что увеличивать Sleep не имеет смысла. можно усыпить обработчик на полчаса, но он все равно не будет спать полчаса. у системы свой таймаут. я точно не помню: 7 секунд вроде бы. по истечени которых если приложение самостоятельно не завершилось, оно будет убито системой. таким образом: нельзя отменить завершение работы приложения по сигналу или по нажатию на крестик. можно лишь выгадать себе 5-7 секунд времени на завершение работы.
0
|
|||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 13.10.2020, 13:53 | ||
|
Скорее всего, ты путаешь с зависанием обработчика, который в SetConsoleCtrlHandler. Если он завис, ничего не вернул, то через некоторое время процесс завершится принудительно.
1
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 13.10.2020, 14:23 | ||
|
задержка не обязательна для Ctrl+C и вот я сейчас проверил, ты прав: Ctrl+C можно отменить. достаточно просто вернуть "мы обработали сигнал", а самим тупо не закрывать приложение. но задержка нужна для закрытия по крестику. потому что если задержки нет, то по нажатию на крестик приложение закроектся моментально. а с задержкой у приложения есть 5 секунд что бы успеть завершиться корректно.
0
|
||
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,927
|
|
| 13.10.2020, 17:53 | |
|
0
|
|
| 13.10.2020, 17:53 | |
|
Помогаю со студенческими работами здесь
8
Кнопки удаляются после закрытия приложения Автозапуск приложения после его закрытия
Автоматический запуск приложения после его закрытия со счётчиком перезапусков Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|