//--------------------------------------------------------------------------- #include #pragma hdrstop #include "CommonClass.h" //---------Server------------------------------------------------------------ __fastcall ServerSocket::ServerSocket() { WORD version; WSADATA data; version = MAKEWORD( 2, 0 ); if(WSAStartup(version, &data) < 0) return -1; if ( LOBYTE( data.wVersion ) != 2 || HIBYTE( data.wVersion ) != 0 ) return -1; } //--------------------------------------------------------------------------- __fastcall ServerSocket::~ServerSocket() { WSACleanup(); } //--------------------------------------------------------------------------- DWORD WINAPI AcceptThread(void *socket_) { SOCKET AcceptSocket = (SOCKET)socket_; len = sizeof(S); client = accept(server, (struct sockaddr FAR *)&S, (int FAR *)&len); } int __fastcall ServerSocket::ServerStart(char *IP, unsigned short PORT) { rSocket = socket(AF_INET, SOCK_STREAM, 0); rS.sin_family = AF_INET; rS.sin_addr.s_addr = inet_addr(IP); rS.sin_port = htons(PORT); bind(server, (struct sockaddr *)&S, sizeof(S)); listen(server, SOMAXCONN); // SOMAXCONN ¼ÒÄÏ Ãִ뿬°á¼ö // accept() ½º·¹µå DWORD nThreadID; CreateThread(0, 0, AcceptThread, (void*)Client, 0, &nThreadID); return 1; } //--------------------------------------------------------------------------- DWORD WINAPI SendThread(void *socket_) { SOCKET SendSocket = (SOCKET)socket_; } int __fastcall ServerSocket::sSend() { // send() ½º·¹µå DWORD nThreadID; CreateThread(0, 0, SendThread, (void*)Client, 0, &nThreadID); } //--------------------------------------------------------------------------- DWORD WINAPI RecvThread(void *socket_) { SOCKET RecvSocket = (SOCKET)socket_; } int __fastcall ServerSocket::sRecv() { // Recv() ½º·¹µå DWORD nThreadID; CreateThread(0, 0, RecvThread, (void*)Client, 0, &nThreadID); } //--------------------------------------------------------------------------- int __fastcall ServerSocket::ServerClose(SOCKET Csocket) { closesocket(Csocket); } //--------------------------------------------------------------------------- //---------Client------------------------------------------------------------ __fastcall ClientSocket::ClientSocket() { } //--------------------------------------------------------------------------- __fastcall ClientSocket::~ClientSocket() { } //--------------------------------------------------------------------------- #pragma package(smart_init)