Indy 10
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.9] |
|
|
Соблюдайте общие правила форума
MSDN Library
FAQ раздела
Поиск по разделу
Как правильно задавать вопросы
Indy 10
|
Сообщ.
#1
,
|
|
|
|
Установил indy10 и очень об этом жалею. Появились неведомые ошибки объяснить и обработать, которые я не могу.
В основном это ошибка №10038. Еврика сообщает, что она вызывается в юните IdStackWindows: ![]() ![]() class function TIdSocketListWindows.FDSelect(AReadSet, AWriteSet, AExceptSet: PFDSet; const ATimeout: Integer): Boolean; var LResult: Integer; LTime: TTimeVal; begin if ATimeout = IdTimeoutInfinite then begin LResult := IdWinsock2.Select(0, AReadSet, AWriteSet, AExceptSet, nil); end else begin LTime.tv_sec := ATimeout div 1000; LTime.tv_usec := (ATimeout mod 1000) * 1000; LResult := IdWinsock2.Select(0, AReadSet, AWriteSet, AExceptSet, @LTime); end; //TODO: Remove this cast Result := (GStack as TIdStackBSDBase).CheckForSocketError(LResult) > 0; //<- there is. end; Фактически исключения поднимаются здесь: ![]() ![]() procedure TIdStackBSDBase.RaiseSocketError(AErr: integer); begin (* RRRRR EEEEEE AAAA DDDDD MM MM EEEEEE !! !! !! RR RR EE AA AA DD DD MMMM MMMM EE !! !! !! RRRRR EEEE AAAAAA DD DD MM MMM MM EEEE !! !! !! RR RR EE AA AA DD DD MM MM EE RR RR EEEEEE AA AA DDDDD MM MM EEEEEE .. .. .. Please read the note in the next comment. *) if AErr = Id_WSAENOTSOCK then begin // You can add this to your exception ignore list for easier debugging. // However please note that sometimes it is a true error. Your program // will still run correctly, but the debugger will not stop on it if you // list it in the ignore list. But for most times its fine to put it in // the ignore list, it only affects your debugging. raise EIdNotASocket.CreateError(AErr, WSTranslateSocketErrorMsg(AErr)); end; (* It is normal to receive a 10038 exception (10038, NOT others!) here when *shutting down* (NOT at other times!) servers (NOT clients!). If you receive a 10038 exception here please see the FAQ at: http://www.IndyProject.org/ If you insist upon requesting help via our email boxes on the 10038 error that is already answered in the FAQ and you are simply too slothful to search for your answer and ask your question in the public forums you may be publicly flogged, tarred and feathered and your name may be added to every chain letter / EMail in existence today." Otherwise, if you DID read the FAQ and have further questions, please feel free to ask using one of the methods (Carefullly note that these methods do not list email) listed on the Tech Support link at: http://www.IndyProject.org/ RRRRR EEEEEE AAAA DDDDD MM MM EEEEEE !! !! !! RR RR EE AA AA DD DD MMMM MMMM EE !! !! !! RRRRR EEEE AAAAAA DD DD MM MMM MM EEEE !! !! !! RR RR EE AA AA DD DD MM MM EE RR RR EEEEEE AA AA DDDDD MM MM EEEEEE .. .. .. *) raise EIdSocketError.CreateError(AErr, WSTranslateSocketErrorMsg(AErr)); end; Исключения появляются, когда браузер-клиент получает ответ на запрос, посланный через idMappedPortTCP. Что мне делать для избежания подобных исключений? Единственный выход, который я вижу это вновь установить Indy9. |