Вот попробовал, только в поток не попадает
#include "stdafx.h"
#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
HANDLE hThread;
DWORD Count, ThreadId;
DWORD THread(LPVOID lParam);
int PORT=1234;
SOCKET ss, cc, r;
sockaddr_in Addr;
WSADATA Wsa;
bool server;
void main () {
WSAStartup(0x0101,&Wsa);
Addr.sin_family=AF_INET;
Addr.sin_addr.s_addr=INADDR_ANY;
Addr.sin_port=htons(PORT);
server=TRUE;
ss=socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if (bind(ss, (sockaddr*)&Addr, sizeof(Addr))==SOCKET_ERROR)
{ closesocket(ss);
ss=0;
}
if (listen(ss, SOMAXCONN)==SOCKET_ERROR)
{closesocket(ss);
ss=0;
}
hThread=CreateThread(NULL,0,THread,&Count,0,&ThreadId);
}
DWORD THread(LPVOID lParam)
{
LPDWORD lpdwCount=(LPDWORD)lParam;
*lpdwCount=0;
if(!r) r=accept(ss,(sockaddr*)&Addr, NULL);
if (r!=INVALID_SOCKET) hThread=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)THread,&Count,0,&ThreadId);
return *lpdwCount;
}