Alex83 |
Отправлено: 19.03.2004, 16:35 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 25
|
У меня такая проблема я пользуюсь такими компонентами как ClientSocket(клиент) и ServerSocket(сервер) и когда происходит подключение ClientSocket (но прога где ServerSocket не включена) происходит ошибка.
А мне надо чтоб выдовало не системнюю ошибку, а мою.
т.е. если прога сервер(ServerSocket) не включена выкидывало не ошибку ...
а до пустим сообщение "Сервер не включен"
Или просто раскажите как обрабатывать ошибки(любую не только которую я предложил выше)
Надеюсь я понятно вырозился что мне надо! |
|
Roman |
Отправлено: 19.03.2004, 16:54 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 78
|
Обрабатывай ошибку подключения ClientSocket...
//при возникновении ошибок в связи
void __fastcall TFTest::ClientSocketError(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
ClientSocket->Active = false;
Label->Caption = "Ошибка связи";
ErrorCode = 0; //обязательно
}
|
|
Alex83 |
Отправлено: 19.03.2004, 17:12 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 25
|
Спасибо большое работает, но мне теперь интересно а как можно обработать эту ошибку программно!(не через событие)
типа
if (error...) Label->Caption = "Ошибка связи";
А так можно сделать?
просто как кокретнее я не знаю
|
|
Roman |
Отправлено: 19.03.2004, 17:18 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 78
|
Можно через блок
try {
ClientSocket->Active = true;
} catch (...) {Label->Caption = "Ошибка связи";}
|
|
Alex83 |
Отправлено: 19.03.2004, 18:41 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 25
|
catch (...) {Label->Caption = "Ошибка связи";}
а что подразумевается под (...)
|
|
exp |
Отправлено: 21.03.2004, 11:26 |
|
Мастер участка
Группа: Участник
Сообщений: 304
|
любая ошибка.
|
|
.piero |
Отправлено: 21.03.2004, 20:55 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 62
|
Roman прав, только лучше сделать это на Application->MessageBo();
|
|