Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

Как заглушить вывод ошибки на экран   Найти похожие ветки 

 
JohnS   (2005-01-11 10:53) [0]

Hello All
Не подскажите можно ли поставить галочку которая блокирует вывод на экран сообщение об ошибках, которые происходят к тому же в СТОРОННИХ компонентах .


 
Александр Иванов ©   (2005-01-11 10:55) [1]

try
...
exept
...
end


 
TUser ©   (2005-01-11 10:55) [2]

try except на все обращения к их методам/свойствам. Галочка - stop on delphi exceptions
+ application.OnException


 
Семен Сорокин ©   (2005-01-11 10:58) [3]

не использовать такие сторонние компоненты.


 
TUser ©   (2005-01-11 11:04) [4]

Кстати, есть еще JclDebug.pas. Люди хвалят, но сам я не пробовал пока. Возможно, это то, что тебе надо ...


 
JohnS   (2005-01-11 12:29) [5]

Кстати

try
...
exept
...
end


Не канает , просто компонент при этом не работает ( я имею ввиду INDY)

Вот пример где разработчики так и советуют , но поставив

try
 raise EIdConnClosedGracefully.Create RSConnectionClosedGracefully);
except
end;


Я просто наблюдаю подвис компонента :-((((((((

procedure TIdIOHandler.RaiseConnClosedGracefully;
begin
 (* ************************************************************* //
 ------ If you receive an exception here, please read. ----------

 
 If this is a CLIENT
 -------------------
 The server side of this connection has disconnected normaly but your client has attempted
 to read or write to the connection. You should trap this error using a try..except.
 Please see the help file for possible further information.

 // ************************************************************* *)

    raise EIdConnClosedGracefully.Create(RSConnectionClosedGracefully);
end;


 
Семен Сорокин ©   (2005-01-11 12:42) [6]

>JohnS   (11.01.05 12:29) [5]
тебе просто нужно добавить обработчик в except:

try
 // работа с компонентом

except
 on E: EIdConnClosedGracefully do
   // попытка прочитать/записать при закрытом соединении
end


 
Семен Сорокин ©   (2005-01-11 12:48) [7]

или в OnException:

procedure TMainForm.AppException(Sender: TObject; E: Exception);
begin
if Assigned(E) and (E is EIdConnClosedGracefully) then
 // твои действия
else
 Application.ShowException(Exception(ExceptObject))
end;


 
JohnS   (2005-01-11 13:05) [8]

Семен Сорокин ©

Так все виснет :-(((((((((((((((((((

try
// работа с компонентом

except
on E: EIdConnClosedGracefully do
  // попытка прочитать/записать при закрытом соединении
end


 
Семен Сорокин ©   (2005-01-11 13:09) [9]


> Семен Сорокин ©
>
> Так все виснет :-(((((((((((((((((((

приведи код, раньше сообщение не нравилось, а теперь всё виснет, что отладчик говорит?


 
JohnS   (2005-01-11 14:01) [10]

Отладчик что прикольно ничего не говорит , висит на IdFTP.put()
пока CTRL-F2 не нажмеш

procedure TIdIOHandler.RaiseConnClosedGracefully;
begin

//ТО что было
// raise EIdConnClosedGracefully.Create(RSConnectionClosedGracefully);

//То что я добавил
try
// работа с компонентом

except
on E: EIdConnClosedGracefully do
 // попытка прочитать/записать при закрытом соединении
end

end;//proc


 
Семен Сорокин ©   (2005-01-11 14:11) [11]


> JohnS   (11.01.05 14:01) [10]
> Отладчик что прикольно ничего не говорит , висит на IdFTP.put()
> пока CTRL-F2 не нажмеш
>
> procedure TIdIOHandler.RaiseConnClosedGracefully;
> begin
>
> //ТО что было
> // raise EIdConnClosedGracefully.Create(RSConnectionClosedGracefully);
>
> //То что я добавил
> try
> // работа с компонентом
>
> except
> on E: EIdConnClosedGracefully do
>  // попытка прочитать/записать при закрытом соединении
> end
>
> end;//proc


ты навреное не понял, в исходники indy лезть не надо, это тебе в твоей процедуре/ф-ии (или процедурах/ф-ях) при работе с этим компонетом надо использовать предложенную конструкцию, как пример:
try
 IdFTP.put()
except
 on E: EIdConnClosedGracefully do  
  MessageDlg("Нет соединения", mtWarning [mbOk], 0)  
end


 
JohnS   (2005-01-11 14:16) [12]


> ты навреное не понял, в исходники indy лезть не надо, это
> тебе в твоей процедуре/ф-ии (или процедурах/ф-ях) при работе
> с этим компонетом надо использовать предложенную конструкцию,
> как пример:
> try
>  IdFTP.put()
> except
>  on E: EIdConnClosedGracefully do  
>   MessageDlg("Нет соединения", mtWarning [mbOk], 0)  
> end


А Блин , это я не так обьяснил. Просто ошибка возникает при Успешной отработке команды , я просто каждый раз закрываю Мессаджбокс с ошибкой ("Connection Closed Gracefully") и все работает !


 
Семен Сорокин ©   (2005-01-11 14:18) [13]


> JohnS   (11.01.05 14:16) [12]

см. [7] и читаем про Application.OnException



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.046 c
1-1105226563
reaper
2005-01-09 02:22
2005.01.23
WebBrowser и ShellListView в одном окне


14-1104881448
Кудесник
2005-01-05 02:30
2005.01.23
Миранда и интернациональность...


3-1103503786
rosl
2004-12-20 03:49
2005.01.23
кодировка


14-1104923780
Почему
2005-01-05 14:16
2005.01.23
Узнать размер файла (LIMBO 04.01.05 23:51)


1-1105287810
Ph2005
2005-01-09 19:23
2005.01.23
Печать html страниц





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский