Здравствуйте, гость ( Вход | Регистрация )
|
spumer |
13.7.2011, 21:51
Сообщение
#1
|
|
Студент ![]() Группа: Новичок Сообщений: 18 Регистрация: 28.3.2011 Пользователь №: 2546 Спасибо сказали: 0 раз(а) Репутация: 0
|
Здравствуйте.
При попытке подкинуть кривой хостнейм, программа вылетала с крит. ошибкой. Затем я начал отлавливать это исключение и пытаться завершить процесс более-менее спокойно. Но к сожалению это приводит к отказу приложения и система его закрывает.
|
|
|
|
![]() |
|
Iron Bug |
17.7.2011, 0:16
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
у меня под линюксом вот такой код
работает нормально. то есть, буст выбрасывает эксепшн типа boost::system::system_error и всё отрабатывает в catch. линкуется это всё с библиотекой boost_system и обязательно с многопоточностью (в венде это флаг компилера). ещё можешь проверить, что у тебя не завалялись где-нибудь разные версии библиотек, если они называются одинаково. в венде конфликты библиотек - обычное дело. но в бусте вроде библиотеки содержат версию и это не должно быть проблемой. Сообщение отредактировал Iron Bug - 17.7.2011, 0:18 |
|
|
|
|
spumer |
17.7.2011, 11:19
Сообщение
#3
|
|
Студент ![]() Группа: Новичок Сообщений: 18 Регистрация: 28.3.2011 Пользователь №: 2546 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(Iron Bug @ 17.7.2011, 3:16) Link у меня под линюксом вот такой код Отдельно он и у меня работает. Пробовал баловаться с флагами -MD, -MT. Исключение происходит в конструкторе класса. Создается объект класса, внутри себя он подключается куда я ему сказал. [Перед вызовом методов хочу поместить проверку на наличие ошибок в экземпляре класса, метод getLastError() const возвращает мне номер ошибки] Затем я вызываю его методы и они запрашивают определенную инфу с сервера. Удаляю объект. P.S: В качестве граф. оболочки для приложения использую QT4. Все статически линкуется. |
|
|
|
spumer resolver 13.7.2011, 21:51
Iron Bug скорее всего, у тебя resolver.resolve(query) возвр... 13.7.2011, 22:18
spumer Цитата(Iron Bug @ 14.7.2011, 1:18) скорее... 13.7.2011, 22:50
Iron Bug в примерах везде ловится std::exception.
(наприме... 13.7.2011, 23:13
spumer Цитата(Iron Bug @ 14.7.2011, 2:13) в прим... 13.7.2011, 23:22
Iron Bug попробуй поставить флаг /EHsc и ловить std::except... 14.7.2011, 7:40
spumer Iron Bug, Спасибо. Буду читать материал по ссылкам... 14.7.2011, 14:19
Litkevich Yuriy Цитата(spumer @ 14.7.2011, 17:19) если эт... 14.7.2011, 18:49
spumer Цитата(Iron Bug @ 14.7.2011, 10:40) попро... 16.7.2011, 22:15
spumer Проделал след. опыт: в конце функции, в которой с... 17.7.2011, 17:23
spumer Все решилось довольно просто.
Как я понял, проблем... 18.7.2011, 12:23
Iron Bug по этим отдельным кускам ничего сказать нельзя. ош... 18.7.2011, 16:40
spumer Класс - http://paste.org.ru/?fp5vdp
Функция запрос... 18.7.2011, 17:26
Iron Bug а на входе что подаёшь?
host может оказаться нуле... 18.7.2011, 19:23
spumer Цитата(Iron Bug @ 18.7.2011, 22:23) а они... 18.7.2011, 21:41
spumer UPD:
Реакция венды на delete ptr перед return; .
... 18.7.2011, 22:47
Iron Bug Цитата(spumer @ 19.7.2011, 0:41) lexical_... 18.7.2011, 22:49
spumer Цитата(Iron Bug @ 19.7.2011, 1:49) дык, о... 18.7.2011, 22:52
Iron Bug Цитата(spumer @ 19.7.2011, 0:41) Тоже сна... 18.7.2011, 22:52
spumer Спасибо за ответы твои.
А утечками памяти я вскоре... 18.7.2011, 22:56
Iron Bug да, в деструкторе socket_ тоже нулевой.
в общем, ... 18.7.2011, 23:02![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 1.1.2026, 6:31 |