Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.17;
Скачать: CL | DM;

Вниз

> Стабильность .....TServerSocket   Найти похожие ветки 

 
malefik   (2006-11-27 10:35) [0]

Удалено модератором
Примечание: СПАМ


 
Сергей М. ©   (2006-11-27 10:45) [1]


> malefik   (27.11.06 10:35)



> могу код предоствить


Приводи код в отдельной ветке в "Сетях", с подробными комментариями, где и что у тебя там происходит


 
malefik   (2006-11-27 11:02) [2]

void __fastcall TMyServerThread_1::ClientExecute(void)
{
 int _count_read;

 _write_to_log("Обнаружено подключение с адреса: " + ClientSocket->RemoteAddress);
 while (!Terminated && ClientSocket->Connected)
 {
   try
   {
     TWinSocketStream* pStream = new TWinSocketStream(ClientSocket, CLIENTWAITTIME_1);

     try
     {
       char buffer[BUFFERSIZE_1];
       memset(buffer, 0, sizeof(buffer));

       if (pStream->WaitForData(CLIENTWAITTIME_1))
       {
         if (!Terminated && ClientSocket->Connected)
         {
           try
           {
             _count_read = pStream->Read(buffer, sizeof(buffer));
           }
           catch (...)
           {
             throw 234;
           }

           if (!(_count_read == 0))
           {
             _gps_data->_send_data_to_base(buffer);
           }
           else
             throw 207;
         }
         else
           throw 220;
       }
       else
         throw 206;
     }
     __finally
     {
       delete pStream;
     }
   }
   catch (int& i)
   {
     switch (i)
     {
     case 206:
       {
         _write_to_log("[206] Ошибка. Время ожидания команды от клиента истекло.");
         break;
       }
     case 207:
       {
         _write_to_log("[207] Ошибка. Нет данных для чтения. Проблемы с соединением?");
         break;
       }
     case 230:
       {
         _write_to_log("[230] Ошибка. Принятые данные не содержат разделителей.");
         break;
       }

     case 231:
       {
         _write_to_log("[231] Ошибка. Проблемы с базой данных?");
         break;
       }

     case 232:
       {
         _write_to_log("[232] Ошибка. Метод _parse_fields.");
         break;
       }
     case 233:
       {
         _write_to_log("[233] Ошибка. Метод _apply_to_base.");
         break;
       }

     case 213:
       {
         _write_to_log("[213] Ошибка. Ошибка выделения пакета. Мусор на входе?");
         break;
       }

     case 220:
       {
         _write_to_log("[220] Ошибка. Соединение было разорвано.");
         break;
       }

     case 234:
       {
         _write_to_log("[234] Ошибка. Чтение данных из потока.");
         break;
       }

     }

     ClientSocket->Close();
   }
   catch (...)
   {
     _write_to_log("[???] Ошибка. TMyServerThread_1::ClientExecute.");
     ClientSocket->Close();
   }
 }
}


 
Сергей М. ©   (2006-11-27 11:11) [3]

Русский язык понимаешь ?

1. Вопрос д.б. задан в "Сетях".
2. С подробными комментариями по проблеме.



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

Текущий архив: 2006.12.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
15-1163577988
clickmaker
2006-11-15 11:06
2006.12.17
DMClient 3.0 beta 2


15-1164388278
Dmitry_177
2006-11-24 20:11
2006.12.17
MessageBox на другом компе через cmd


15-1164630422
CHILD
2006-11-27 15:27
2006.12.17
Form CHILD


2-1164625210
Krants
2006-11-27 14:00
2006.12.17
Назначить событие всем компонентам


11-1140550276
Alextp
2006-02-21 22:31
2006.12.17
Добавить NewReadFileStreamW