Есть сервер, уже отлаженый  
Открывает порт ловит входящие акцептирует и передает акцептированый сокет другому потоку который ведет по нему обмен.
Есть клиент на бейсике котрый через компонент winsock2 нормально сним работает...
Теперь хочу сделать сишый клиент и имею трабл конектися, сервер акцептирует, первая посылка проходит и все ни каких ошибок, клиент через send чесно каждые 10 секунд продолжает посылать запросы но на сервере они не приходят ( не возникает события ).
Инициация сокета
SOCKET CDLS_DAC::OpenAndConnect(CString ServerName, int Port, int SocketType) 
{
SOCKET ConnSocket;
    LPHOSTENT hp;
    SOCKADDR_IN ServerAddr;
    ConnSocket = socket(AF_INET, SocketType, IPPROTO_TCP); /* Open a socket */
    if (ConnSocket <0 ) {
        return INVALID_SOCKET;
    }
    memset(&ServerAddr, 0, sizeof(ServerAddr));
    ServerAddr.sin_family = AF_INET;
    ServerAddr.sin_port = htons(Port);
   /* if (isalpha(ServerName[0])) {   
        hp = gethostbyname(ServerName);
        if (hp == NULL) {
            return INVALID_SOCKET;
        }
        ServerAddr.sin_addr.s_addr = hp->h_addr;
    } else { 
		*/
        ServerAddr.sin_addr.s_addr = inet_addr(ServerName);
   // } acsept
if (connect(ConnSocket, (LPSOCKADDR)&ServerAddr, sizeof(ServerAddr)) == SOCKET_ERROR)
{
        closesocket(ConnSocket);
        return INVALID_SOCKET;
    }
send(   this->sSoc ,(char *)&p_Pak,sizeof dls_Query_Pak ,0);
    return ConnSocket;
while (isRun)
{
sSoc=OpenAndConnect(Server_IP,Server_Port,SOCK_STREAM);
if(sSoc !=INVALID_SOCKET)
{
isConnect=true;
while (isConnect)
{
int i;
//.....  Сборка пакета
if(send(   this->sSoc  ,(char *)&m_Pak,sizeof dls_Query_Pak ,0)==SOCKET_ERROR )
{
	int d=WSAGetLastError();
	printf("\n\nDAC Socket Error [%d]\n",d) ;
     isConnect=false
}
WFSO(Ev,10000)/// задержка на 10 мин
}
}
}