sledi za "^^^^"
> получаю данные > int recv( SOCKET s, char FAR *buf, int len, int flags); > но возникает следуйщая ошибка > WSAEFAULT > The buf parameter is not completely contained in a valid > part of the user address space. > что это значит??? > часть кода
> ...
> char *getbuf=new char[0x1000];
> ...
> case FD_READ:
>
> err=recv(newsock,getbuf,sizeof(getbuf),0);
^^^^^^^^^^^^^^^^^^^ - tut u tebya vsegda vozvrashaet 4, t.e. sizeof(getbuf) == 4. VSEGDA !!!
poprobuj tak :
> err=recv(newsock, getbuf, 0x1000, 0);
> if(err==SOCKET_ERROR)
> {
> switch(WSAGetLastError())
> {
> case WSANOTINITIALISED:
> str="1";
> break;
> case WSAENETDOWN:
> str="2";
> break;
> case WSAEFAULT: // ВОТ ОНА
> И ВОЗНИКАЕТ
> str="3";
> break;
> ...
---
> если не сложно подскажите
|