www.pudn.com > evil¡¯s illusion Server Codes.rar > ServerSockHandler.h
#ifndef _DEFAULT_SOCKET_HANDLER
#define _DEFAULT_SOCKET_HANDLER
#define DATA_BUFSIZE 8192
enum _OVERLAPPED_FLAG
{
OVERLAPPED_RECV,
OVERLAPPED_SEND,
} OVERLAPPED_FLAG;
typedef struct tag_TCOMPLETIONPORT
{
OVERLAPPED Overlapped;
WSABUF DataBuf;
CHAR Buffer[DATA_BUFSIZE];
INT nOvFlag;
} _TCOMPLETIONPORT, * _LPTCOMPLETIONPORT;
typedef struct tag_TOVERLAPPEDEX
{
CHAR Buffer[DATA_BUFSIZE];
WSABUF DataBuf;
SOCKET Socket;
WSAOVERLAPPED Overlapped;
DWORD BytesSEND;
DWORD BytesRECV;
INT nOvFlag;
} _TOVERLAPPEDEX, * _LPTOVERLAPPEDEX;
BOOL InitServerSocket(SOCKET &s, SOCKADDR_IN* addr, UINT nMsgID, int nPort, long lEvent = 2);
BOOL ConnectToServer(SOCKET &s, SOCKADDR_IN* addr, UINT nMsgID, LPCTSTR lpServerIP, DWORD dwIP, int nPort, long lEvent);
BOOL ClearSocket(SOCKET &s);
BOOL CheckAvailableIOCP();
INT CreateIOCPWorkerThread(HANDLE hCP, LPDWORD lpdwThreadID, LPTHREAD_START_ROUTINE WorkerThreadFunc);
BOOL InitThread(LPTHREAD_START_ROUTINE lpRoutine);
BOOL CheckSocketError(LPARAM lParam);
#endif