Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
ВнизSOS ! Не работает raise Exception.Create( Сообщение ) Найти похожие ветки
← →
Globus (2003-09-09 21:08) [0]Во всём проекте перестали работать raise Exception.Create ("Сообщение"). Сообщения на экран не выводятся ! С системными исключительными ситуациями та же проблема. Вввод неправльного имени или пароля при подключении к БД, или нарушение PRIMARY KEY и т.п. ошибки раньше выбрасывались пользователю на экран. Теперь никаких сообщений ! В режиме отладки отладчик показывает сообщение, но дальше оно чем-то подавляется. Не мной подавляется, это точно. Потому что у меня в проекте разбросаны десятки RAISE-ов и раньше они работали, и вдруг как по мановению волшебной палочки работать перестали. C помощью try ... exept я их не перехватываю и не глушу. Видимо какая-то опция в настройках проекта их глушит. Но какая ?
← →
HolACost! (2003-09-09 21:11) [1]Тестил на другой тачке?
← →
Globus (2003-09-09 21:19) [2]Как раз с других тачек пользователи и прибежали, стали жаловаться что программа молчит как партизан, никаких собщений не выдаёт. Попробовал пересобрать проект на компе другого разработчика - никаких изменений ! Сообщения подавляются. Нашёл старую версию проекта двухмесячной давности где всё нормально. Но откатываться на 2 месяца назад не хочется..... Хочется понять, что за гадость прицепилась к моему проекту.
← →
HolACost! (2003-09-09 21:29) [3]Ты не перехватываешь что-то вроде OnException?
← →
Globus (2003-09-09 21:44) [4]Да нет же. Я на Delphi c 1996 года пишу, прекрасно знаю что такое On Exceptin. Да и не могу же я его везде перехватывать, во всём огромном проекте (у меня куча мест в программе, где должны возникать exception и сообщения об ошибках). Проблема в том, что что-то перехватывает его ВО ВСЁМ ПРОЕКТЕ и глушит. Проект огромный, ему не первый год и далеко не первая версия. Как такое возможно ? Если бы я захотел такое сделать, то не сумел бы. Тут что-то кроется в настройках проекта, а не в исходниках. Но я нашёл только настройки отладчика, которые подавляют сообщения об ошибках в режиме отладки. Это не то....
← →
HolACost! (2003-09-09 21:47) [5]пошёл ломать Дельфю - самому уже интересно тогда! У меня была похожая фича из-за одного стороннего компонента! Но там пропали ексцептены только определённые!
← →
Тохус (2003-09-09 22:23) [6]Бывает так, что вновь добавленный компонент меняет один из используемых модулей на похожий - например StdCtrls на QStdCtrls.
У меня таким образом отключалось ShowMessage.
← →
jack128 (2003-09-09 22:25) [7]
> Да и не могу же я его везде перехватывать
Ну почему же не можешь? Tapplication.OnException как раз перехватывает все исключения во всем проэкте(точнее в Application.Run, но это обычно почти весь проэкт)
← →
Globus (2003-09-10 16:09) [8]>Ну почему же не можешь? Tapplication.OnException как раз перехватывает все исключения
Точно, я о нём забыл. Но к сожалению, мне это не помогло. Проверил программу - нигде я TApplication.OnException не использую. Ещё проверил ApplicationEvents (я один такой компонент использую), но у того кроме onMinimize и onRestore никаких событий не перехватываю).
Идея насчёт вновь вновь добавленного компонента неплохая, но я в последние месяцы никаких новых компонентов не добавлял. Да и забить все exeptions в проекте этот компонент смог бы только в том случае, если бы заменил модуль SysUtils (или бы подправил там что-нибудь).
← →
Globus (2003-09-10 21:58) [9]Пересобрал проект шестым Дельфи... Сообщения об ошибках снова стали выводиться на экран. Я ничего не понял, что это было. Такого безобразия никогда раньше не было (с Delphi работаю с 1-й версии). Нашёл версию проекта полугодовой давности (там всё нормально работало, сохранился старый exe-шник с нормальной обработкой ошибок), пересобрал его пятым Дельфи и сообщения перестали выводиться на экран !!! Провёл тот же эксперимнт на компьютере другого разработчик - то же самое, сообщения не выводятся.
Вобщем, я вынужденно переношу проект на шестой Дельфи. Но никакой гарантии, что всё будет в порядке, нет. А если сообщения об ошибках снова начнут исчезнут, куда дальше переходить, на 7-й, на 8-й ?
← →
KSergey (2003-09-11 07:24) [10]А интересно, полный ребилд проекта не помог бы? Не факт, конечно, но иногда помогает... (пока из переписки не факт, что это было сделано)
← →
Globus (2003-09-11 17:07) [11]А что такое полный ребилд ? Я нажимаю пункт меню Build в интегрированной среде Дельфи. Это какой, ребилд, полный или неполный ?
← →
Verg (2003-09-11 18:18) [12]Хм, а что мешает какому-либо из компонентов (левых произ-телей) "взять на себя" Application.OnException?
И знать ничего не будешь...
← →
Юрий Федоров (2003-09-11 19:36) [13]У меня была такая ситуация - какой-то сторонний компонент "захватил" Application.OnException. Я сейчас точно не помню, какой именно, но он относился к известной библиотеке известной фирмы (потому что компоненты Васи Пупкина я не ставлю).
В принципе этf ситуация проверяется элементарно - нужно просто в run-time проверить Assigned (Application.OnException)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.01 c