Сообщение Re: Про двойной перехват исключений в DLL (как бы эстетичнее от 16.11.2020 23:00
Изменено 16.11.2020 23:28 ononim
Re: Про двойной перехват исключений в DLL (как бы эстетичнее офо
D> }
D> catch (my::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
D> catch (std::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
1) зачем нужно g_dll.init_exception?
2) если оно прям таки нужно (нет), почему бы my::exception не отнаследовать от std::exception или runtime_error какого чтоб проще было? И ловить соответственно только std::exception, вместо SEH в том числе тут:
D> __except( g_dll.set_exception_info(GetExceptionInformation(), GetExceptionCode()) ) {
D> g_dll.show_exception();
D> }
D> catch (my::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
D> catch (std::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
1) зачем нужно g_dll.init_exception?
2) если оно прям таки нужно (нет), почему бы my::exception не отнаследовать от std::exception или runtime_error какого чтоб проще было? И ловить соответственно только std::exception, вместо SEH в том числе тут:
D> __except( g_dll.set_exception_info(GetExceptionInformation(), GetExceptionCode()) ) {
D> g_dll.show_exception();
D> }
Re: Про двойной перехват исключений в DLL (как бы эстетичнее
D> }
D> catch (my::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
D> catch (std::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
1) зачем нужно g_dll.init_exception?
2) если оно прям таки нужно (нет), почему бы my::exception не отнаследовать от std::exception или runtime_error какого чтоб проще было? И ловить соответственно только std::exception, вместо SEH в том числе тут:
D> __except( g_dll.set_exception_info(GetExceptionInformation(), GetExceptionCode()) ) {
D> g_dll.show_exception();
D> }
..а stackwalker заюзать в к-ре my::exception
D> catch (my::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
D> catch (std::exception & ex) {
D> g_dll.init_exception(ex);
D> throw;
D> }
1) зачем нужно g_dll.init_exception?
2) если оно прям таки нужно (нет), почему бы my::exception не отнаследовать от std::exception или runtime_error какого чтоб проще было? И ловить соответственно только std::exception, вместо SEH в том числе тут:
D> __except( g_dll.set_exception_info(GetExceptionInformation(), GetExceptionCode()) ) {
D> g_dll.show_exception();
D> }
..а stackwalker заюзать в к-ре my::exception