Независимый от платформы способ установки необработанного обработчика исключений с помощью Qt? - PullRequest
0 голосов
/ 08 января 2010

Mac OS X (Какао) NSSetUncaughtExceptionHandler

Windows SetUnhandledExceptionFilter

Есть ли независимый от платформы способ сделать это с помощью Qt?

Ответы [ 2 ]

1 голос
/ 08 января 2010

Неужели было бы так плохо писать об этом #ifdefs? Это всего лишь один экземпляр, и вам никогда не придется смотреть на него снова, как только вы закончите. При этом, по крайней мере, в Windows, я бы рекомендовал вам , а не сделать это, и вместо этого зарегистрироваться в Vista + Restart Manager, если он доступен.

0 голосов
/ 08 января 2010

А как насчет очевидного обработчика в main ()? Я имею в виду ваше приложение имеет следующие строки:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow mainWin;
    mainWin.show();
    return a.exec();
}

Как насчет простой обёртки:

try{
   QApplication a(argc, argv);
   ...
}
catch //catches any previously unhandled
{
    //do graceful exit
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...