[BCB] Serwer-Klient, błąd

0

Mam sobie aplikacje serwer - klient. Kiedy polacze serwer z klientem w Timerze mam ustawione:

if (ClientSocket1->Active==true)
{
Label1->Caption="ON";
Label1->Font->Color=clLime;
}

if (ClientSocket1->Active==false)
{
Label1->Caption="OFF";
Label1->Font->Color=clRed;
}

no i kiedy sie polaczy - dziala, label1 robi sie zielony z napisem ON :) kiedy w kliencie dam "rozlacz" tez dziala - robi sie czerwone z napisem OFF. Ale problem jest kiedy serwer nagle sam sie wylaczy (np. przez reset tamtego kompa) - wtedy dostaje wiadomosc Asynchronous socket error 10061 :? dlaczego tak sie dzieje i co moge z tym zrobic? chce wiedziec kiedy serwer sie wylaczy, ale nie chce ogladac tego bledu. Tzn jak sie nie da go usunac to niech bedzie, wazne zeby label robil sie czerwony OFF :)

pomozcie

0

przygladnij sie eventowi OnError

0
ClientSocket1->Active

to flaga, a jeżeli chodzi o obsługę zdarzeń to zerknij na OnDisconnect i wtedy zmieniaj ten label na "OFF"

void __fastcall TForm1::ClientSocket1Disconnect(TObject *Sender,
      TCustomWinSocket *Socket)
{
Label1->Caption="OFF";
Label1->Font->Color=clRed;
}
0

melu: wlasnie mam to OnDisconnect i tez nie dziala, a kiedy dam to jeszcze do OnError to tez nie dziala...

0

A czy ktos napisal, ze masz to dac do OnError, przygladnij sie == poszukaj w helpie

1 użytkowników online, w tym zalogowanych: 0, gości: 1