1 #include "..\include\raMain.h" 13 m_SocketAddress.sin_family =
RA_INET;
17 int err = WSAStartup(MAKEWORD( 2, 2 ), &m_WSAData);
21 sprintf(buf,
"WinSock 2.2 kann nicht gestartet werden, Fehler Code %d", err);
24 m_Socket = ::socket(
RA_INET, SOCK_STREAM, IPPROTO_TCP);
25 if (m_Socket == INVALID_SOCKET)
28 sprintf(buf,
"Create Socket, Fehler Code %d", err);
36 int err = WSAStartup(MAKEWORD(2, 2), &m_WSAData);
40 sprintf(buf,
"WinSock kann nicht gestartet werden, Fahler Code", err);
47 closesocket(m_Socket);
59 if(m_Socket != INVALID_SOCKET)
62 FD_SET(m_Socket, &fdSetSend);
64 FD_SET(m_Socket, &fdSetRecv);
69 if(m_Socket != INVALID_SOCKET)
72 FD_CLR(m_Socket, &fdSetSend);
74 FD_CLR(m_Socket, &fdSetRecv);
79 struct timeval t = {0, 5};
81 ::select(0, NULL, &fdSetSend, NULL, &t);
83 ::select(0, &fdSetRecv, NULL, NULL, &t);
87 if(FD_ISSET(m_Socket, &fdSetRecv))
89 return ::recv(m_Socket, m_recvbuf, RECVBUFLEN, 0);
95 if(FD_ISSET(m_Socket, &fdSetSend))
97 int iRet = ::send(m_Socket, Data, Size, 0);
98 if(iRet == SOCKET_ERROR)
100 printf(
"Socket nicht vorhanden");
static void fdzero(bool write)
static void select(bool write)
bool Send(LPCSTR Data, int Size)
void RAPI RERROR(raString x)