Russian Qt Forum
Май 09, 2024, 01:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Обработка завершения приложения  (Прочитано 3503 раз)
once_again_abc
Гость
« : Ноябрь 09, 2011, 08:46 »

Есть ли в кьюте надежный и удобный механизм перехвата и обработки завершения приложения, например в результате краха или если пользователь нажимает крестик "Close" в правом верхнем углу главного окна и т.д.?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Ноябрь 09, 2011, 09:56 »

Есть ли в кьюте надежный и удобный механизм перехвата и обработки завершения приложения, например в результате краха
"Надёжность" и "крах" вещи по определению не совместимые.

Цитировать
или если пользователь нажимает крестик "Close" в правом верхнем углу главного окна и т.д.?
Код
C++ (Qt)
void QApplication::lastWindowClosed () [signal]
Записан

Qt 5.11/4.8.7 (X11/Win)
Blackwanderer
Гость
« Ответ #2 : Ноябрь 09, 2011, 10:01 »

Для обработки крестика есть сигнал QApplication::lastWindowClosed()
По поводу краха - тут все зависит от того, что за крах. На какие-то случаи есть соответствующие сигналы соответствующих классов Qt, на остальные - механизм исключений C++.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #3 : Ноябрь 09, 2011, 10:21 »

По поводу краха - тут все зависит от того, что за крах. На какие-то случаи есть соответствующие сигналы соответствующих классов Qt, на остальные - механизм исключений C++.
Ну-ка ну-ка проясни - какие для этого есть "соответствующие сигналы" и чем тебе они и исключения C++ помогут, например, когда у тебя напрочь будет побит стэк?
Записан

Qt 5.11/4.8.7 (X11/Win)
once_again_abc
Гость
« Ответ #4 : Ноябрь 09, 2011, 10:24 »

Есть ли в кьюте надежный и удобный механизм перехвата и обработки завершения приложения, например в результате краха
"Надёжность" и "крах" вещи по определению не совместимые.

надежный и удобный механизм перехвата ... краха

=)
« Последнее редактирование: Ноябрь 09, 2011, 10:26 от once_again_abc » Записан
once_again_abc
Гость
« Ответ #5 : Ноябрь 09, 2011, 10:25 »

По поводу краха - тут все зависит от того, что за крах. На какие-то случаи есть соответствующие сигналы соответствующих классов Qt, на остальные - механизм исключений C++.
Ну-ка ну-ка проясни - какие для этого есть "соответствующие сигналы" и чем тебе они и исключения C++ помогут, например, когда у тебя напрочь будет побит стэк?

мне не важно какой крах. мне важно остановить ядерную реакцию, чтобы не бабахнуло. хрен с ним с приложением и операционкой, но мне надо 100% гарантировано успеть перевести устройство в безопасный режим.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #6 : Ноябрь 09, 2011, 10:29 »

Этим я тебе пытался сказать, что надёжного и удобного и простого механизма перехвата не существует.
Единственный надёжный способ - это написать приложение-запускальщик, которое будет запускать основное приложение и следить за его завершением и делать соответствующие дела при падении основного приложения.
Записан

Qt 5.11/4.8.7 (X11/Win)
once_again_abc
Гость
« Ответ #7 : Ноябрь 09, 2011, 10:35 »

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

согласен.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.119 секунд. Запросов: 22.