Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
ClientSocket.h
Package: SwordOnline.rar [view]
Upload User: dzyhzl
Upload Date: 2019-04-29
Package Size: 56270k
Code Size: 2k
Category:
Game Server Simulator
Development Platform:
C/C++
- // ClientSocket.h: interface for the CClientSocket class.
- //
- //////////////////////////////////////////////////////////////////////
- #if !defined(AFX_CLIENTSOCKET_H__C524C6B2_0AA8_4E6C_9FA0_09F316FCA61E__INCLUDED_)
- #define AFX_CLIENTSOCKET_H__C524C6B2_0AA8_4E6C_9FA0_09F316FCA61E__INCLUDED_
- #if _MSC_VER > 1000
- #pragma once
- #endif // _MSC_VER > 1000
- #include <winsock2.h>
- #include "ESClientException.h"
- #include "ESClientUtils.h"
- #include "ESClientManualResetEvent.h"
- #include "GameClient.h"
- //[ Include in ...Protocol
- #include "ProtocolProtocol.h"
- class S3PDBSocketParser;
- class CClientSocket
- {
- public:
- typedef struct tag_SERVERPARAM
- {
- SOCKET s;
- CGameClient* pS;
- }_SERVERPARAM, *_PSERVERPARAM;
- typedef struct tag_RECVPARAM
- {
- SOCKET s;
- CGameClient* pS;
- IBYTE* pRecvBuf;
- int iRecvBufSize;
- struct sockaddr_in from;
- int fromlen;
- int iResult;
- }_RECVPARAM, *_PRECVPARAM;
- typedef struct tag_USERINFO
- {
- char szHostAddr[16];
- char szUserName[def_DBUSERNAME_MAX_LEN+1];
- char szPassword[def_DBPASSWORD_MAX_LEN+1];
- short siPriority;
- BOOL bLoggedin;
- char szLastLoginTime[20];
- char szLastLogoutTime[20];
- }_USERINFO, *_PUSERINFO;
- enum { DBLOGINSTRUCT_SIZE = KLOGINSTRUCTHEADSIZE + 32 };
- typedef DWORD ( CALLBACK *LOGINCALLBACK )( DWORD dwLoginResult, DWORD dwCustomParameter );
- static CClientSocket* Instance( short* psiPort = NULL );
- static CClientSocket* GetInstance();
- static void ReleaseInstance();
- static BOOL IncludeSomeBitValue( DWORD dwMatrix, DWORD dwSomeBitValue );
- protected:
- static CClientSocket* m_pInstance;
- public:
- virtual ~CClientSocket();
- BOOL Start();
- BOOL Stop();
- BOOL SetServerAddr( LPCTSTR lpszIPAddr, short siPort );
- BOOL SetServerAddr( DWORD dwIPAddr, short siPort );
- BOOL RemoteQuery( _PDBLOGINSTRUCT pParam,
- CClientSocket::LOGINCALLBACK LoginCallbackFun,
- DWORD dwCustomParam,
- DWORD dwMilliseconds );
- BOOL Connect( LPCTSTR lpszAddr, short siPort );
- protected:
- CClientSocket();
- BOOL InitWinSocket();
- BOOL UninitWinSocket();
- BOOL HasValidSocket();
- BOOL CreateSocket( short siPort );
- BOOL ReleaseSocket();
- DWORD Recvfrom( char FAR* buf, int len, DWORD dwMilliseconds );
- SOCKET m_s; // Not used
- CGameClient* m_pS;
- _SERVERPARAM m_serverParam;
- _RECVPARAM m_recvParam;
- HANDLE m_hServer;
- struct sockaddr_in m_serverAddr;
- };
- #endif // !defined(AFX_CLIENTSOCKET_H__C524C6B2_0AA8_4E6C_9FA0_09F316FCA61E__INCLUDED_)