Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.08.2011, 19:30   #1
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию Перехват Asynchronous Socket Error

Вот как его перехватить? Вот так
Код:
try
    ClientSocket1.Active:=True;
except
    ShowMessage('False!');
end;
Не идёт.
_-Re@l-_ вне форума Ответить с цитированием
Старый 07.08.2011, 19:47   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

на то он и асинхронный сокет, чтобы ошибки лезли не тогда, когда их ждёшь.

В OnError() присваивай ErrorCode := 0, тогда исключений вроде как не будет.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 07.08.2011, 19:51   #3
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Перехват ошибок сокета. Напишем собственную процедуру:
Код:
procedure TForm1.ClException(Sender: TObject; Error: Exception);
begin
  if (Error.ClassName = 'ESocketError') then
  begin
    // Что-то
  end
  else Application.ShowException(Error); // Ошибки не сокета пусть показывает
end;
Добавим в FormCreate связку с процедурой обработки ошибок:
Код:
// Пусть обработка ошибок идет через специальную процедуру
Application.OnException := ClException;

Последний раз редактировалось Shouldercannon; 07.08.2011 в 19:56.
Shouldercannon вне форума Ответить с цитированием
Старый 07.08.2011, 20:29   #4
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

veniside, как-то так получилось, что ... я через 2 минуты после создания темы обнаружил это же
Shouldercannon, интересно, я должен был до этого догадаться... Но ладно, спасибо.
_-Re@l-_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сервер клиент asynchronous socket error 10061 Pein95 Работа с сетью в Delphi 15 22.01.2011 03:33
Asynchronous socket error 10061 Nice42ru Помощь студентам 5 21.08.2010 12:32
Ошибка сетевого приложения Asynchronous socket error 10060 Glorius Свободное общение 7 22.03.2009 12:19
asynchronous socket error 10060 delphin100 Работа с сетью в Delphi 6 07.05.2008 07:07