Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.061 c
14-71835
k-man
2003-09-01 18:59
2003.09.22
Железный трабл 2


14-71864
MacroDenS
2003-09-01 11:21
2003.09.22
Всех с с праздником!


1-71641
Vt
2003-09-09 02:43
2003.09.22
НЕ модальная форма перекрывает модальную


7-71967
oduvan
2003-07-10 10:25
2003.09.22
Hint WindowsXP. Как показать у моего приложения?


7-71968
kalishenko
2003-07-08 19:00
2003.09.22
Принтер и шрифты