|
помогите в моих начинеаниях [winsock]
|
Posted by: делитант on October 17, 2001 at 22:29:39
Posters Details: [212.42.80.80] [212.42.80.80], X-Forwarded 4: [] [Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)]
ребята помогите в моих начинеаниях к вашему вниманию я представляю 2 прогр. одна сервер другая клиент. сервер сделан не до конца часть кода не доделана а клиент просто посылает строку серверу посмотрите и откорректируйте их дополните программки необходимыми функциями и если не сложно то в кратце объясните их также подкинте пару интересных функций которые могли бы быть полезны мне буду очень благодарен /////////////////////////////////////сервер #include <iostream.h> #include <winsock.h> HWND GetHwnd(); main() { WSADATA ws; SOCKET sock,sock_two; sockaddr_in addr,addr_two; if(WSAStartup(0x0101,&ws)!=SOCKET_ERROR) { sock=socket(AF_INET,SOCK_STREAM,0); if(sock!=INVALID_SOCKET) { addr.sin_family=AF_INET; addr.sin_port=htons(1234); addr.sin_addr.s_addr=INADDR_ANY; if(bind(sock,(LPSOCKADDR)&addr,sizeof(addr))!=SOCKET_ERROR) { if(WSAAsyncSelect(sock,GetHwnd(),NULL,FD_ACCEPT)!=SOCKET_ERROR) { listen(sock,5); while(1) { ; } /* вот тут од должен быть в постоянной готовности */ /* в цикле должен быть accept но зачем ему пужен второй SOCKET и sockaddr_in какие они выполняют задачи*/ } else cout<<"\nWSAAsyncSelect bad\n"; } else cout<<"\nbind bad\n"; } else cout<<"\nSOCKET bad\n"; } else cout<<"\nWSAStartup bad\n"; return 0; } HWND GetHwnd() { SetConsoleTitle("server"); return FindWindow(NULL,"server"); } /////////////////////////////////////клиент #include <iostream.h> #include <winsock.h> #define TEXT "HELLO_WORLD\n" main() { WSADATA ws; if(WSAStartup(0x0101,&ws)!=SOCKET_ERROR) { SOCKET sock; sock=socket(AF_INET,SOCK_STREAM,0); if(sock!=INVALID_SOCKET) { sockaddr_in addr; addr.sin_port=htons(1234); addr.sin_family=AF_INET; addr.sin_addr.s_addr=inet_addr("127.0.0.1"); if(connect(sock,(LPSOCKADDR)&addr,sizeof(addr))!=SOCKET_ERROR) { send(sock,TEXT,sizeof(TEXT),0); // неужели тут больше ничего ненадо??? } else cout<<"\nconnect bad\n"; } else cout<<"\nSOCKET bad\n"; } else cout<<"\nWSAStartup bad\n"; return 0; }
Follow Ups:
|
|