Почему метод send (winsock2) возвращает SOCKET_ERROR, а код ошибки 0?
res := Send(FSocketNative, FBufferPartOut.Data[0], FBufferPartOut.Header.Size, 0);
if res = -1 then begin
WSAError := WSAGetLastError;
res := GetLastError;
end;
После записи в сокет res = -1. А код ошибки = 0. И WSAGetLastError и GetLastError возвращают 0.
Кто может подсказать почему такое возникает?
Прошелся отладчиком до получения ошибки самостоятельно. Send возвратила -1 (SOCKET_ERROR). При попытке получить код ошибки возвращается 0 (Операция успешно завершена).
Вопрос в том, как такое возможно?
Hemul GM, После Send в директиве стоял кусок кода. Директива была включена - код выполнялся. Перенес выше WSAGetLastError и ошибка получается корректно