카테고리 없음

ioctlsocket 10038 에러

안녕1999 2017. 2. 18. 23:30

잘되던 코드가, 갑자기 에러가 난다. 여러가지 방법을 사용해 보았으나, 불필요한 디버깅 코드를 추가하여, 해결되었다.

int sSOCKET_get_rx_len(sSOCKET *ps)

{

#ifdef WIN32

unsigned long size;

#else

//int size;

#endif


#ifdef _DEBUG

int err;


err=GetLastError();

if(err!=0)//<<== 이코드를 넣어야, 에러가 발생하지 않는다...

{

err++;//<<== 이코드를 넣어야, 에러가 발생하지 않는다...

//err++;

}

#endif


if(ioctlsocket(ps->s,FIONREAD,&size)==0)

{

//ps->proc(ps,size);

return size;

}

else

{

//err

#ifdef WIN32

int err;


err=GetLastError();

if(err!=0)

{

err++;

}

//잘되던코드가 갑자기 ioctlsocket만 호출하면, 10038 에러가 발생한다. Socket operation on nonsocket.

#endif

sSOCKET_close(ps);

}

return 0;

}