![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сокеты [D6, Win95/98]
Мыш © (2003-03-15 09:39:00)Есть два приложения - клиент и сервер (tclientsocket и tserversocket), клиент пытается подключиться к серверу, но если сервер не доступен возникает ошибка что-то типа "error socket connection" Как этого избежать?
Мыш (2003-03-15 14:20:00) [1]2 malder
А, не видел твое сообщение, когда предыдущее постил. Все ясно. Признаю, виноват, поленился в хелп залесть :)
Мыш (2003-03-15 14:14:00) [2]2 Palladin:
На событие onerror стоит команда client.Active:=false; но это не помогает.
А ошибка происходит в событии таймера, который периодически пытается подключиться к хосту
if not client.Active then client.Active:=true;
Malder (2003-03-15 14:12:00) [3]Мыш, ну вдумайся в свой вопрос.
Если ты подоединяешься и удаленный сервер недоступен, то что происходит ? Error socket connection. Как он может не происходить ? Тебе правильно ответили, что он будет происходить по любому, если только сервер не будет доступен постоянно.
А имеешь ты, наверное, в виду то, чтобы не вылезало окошко с таким сообщением. Вот для этого у компонента TClientSocket есть событие OnError, куда передается код возникшей ошибкиvar ErrorCode: Integer
Если ты не обработаешь ошибку и не присвоишьErrorCode:=0то ошибка будет обработана стандартным обработчиком, который выведет на экран данное окно. Уф.
Palladin (2003-03-15 13:52:00) [4]очень рекомендую изучить вкладку Events в Object Inspector у компонента TClientSocket
Мыш (2003-03-15 13:35:00) [5]Сервер не может быть всегда доступен, у меня два компа в локалке, так все работает, клиент принимает команды, выполняет их, а вот когда комп с сервером перезагружается, клиент выдает ошибки.
А то, что айпи надо прописывать, это и ежу понятно, иначе коннекта не было бы.
CrazYk (2003-03-15 12:07:00) [6]Надо IP номер сервака в хосте клиента писать!!!
Кот Бегемот (2003-03-15 10:06:00) [7]Наверно делать - чтобы сервер был доступен :)))