Пытаюсь сохранять полученный дескриптор сокета в ассоциативный массив а потом извлекать его оттуда.Только вот ничего не получается Code: #include <map> #include <winsock2.h> #include <stdio.h> #include <windows.h> #include <conio.h> #include <string> using namespace std; map <string,SOCKET> sbox; DWORD WINAPI server(LPVOID lParam) { char ip[17]; SOCKET sin,sout;WSADATA wsd; SOCKADDR_IN ladr,cadr; WSAStartup(MAKEWORD(2,0),&wsd); ladr.sin_family=AF_INET; ladr.sin_port=htons(250); ladr.sin_addr.s_addr=0; sin=socket(AF_INET,SOCK_STREAM,0); bind(sin,(sockaddr*)&ladr,sizeof(ladr)); //HANDLE mut=CreateMutex(NULL,false,"mymut"); for(;;) { listen(sin,10); int sz=sizeof(cadr); sout=accept(sin,(sockaddr*)&cadr,&sz); Sleep(100); getpeername(sout,(sockaddr*)&cadr,&sz); wsprintf(ip,"%s",inet_ntoa(((SOCKADDR_IN *)&cadr)->sin_addr)); //WaitForSingleObject(mut,INFINITE); sbox[string(ip)]=sout; //ReleaseMutex(mut); } } int main() //client connect here { DWORD id;SOCKET test; char *buf=new char[1024*1024]; CreateThread(0,0,&server,0,0,&id); getch(); test=sbox["127.0.0.1"]; for(;;) { recv(test,buf,1024*1024,0); Sleep(500); send(test,buf,strlen(buf),0); } } Подскажите что не так?