// ..\..\..\Public\PduLink\PduSocketServer.cpp : 实现文件 // #include "stdafx.h" #include "PduSocketServer.h" #include "PduSocket.h" #include "PduMain.h" // CPduSocketServer CPduSocketServer::CPduSocketServer(CPduMain* a_pPduMain) { ASSERT(a_pPduMain != NULL); m_pParent = a_pPduMain; } CPduSocketServer::~CPduSocketServer() { m_pParent = NULL; } /***************************************************************** **【函数名称】 Init **【函数功能】 初始化SOCKET SERVER **【参数】 a_nListenPort 监听端口 **【返回值】 初始化是否成功 ****************************************************************/ BOOL CPduSocketServer::Init(const int a_nListenPort) { if(!Create(a_nListenPort)) return FALSE; if(!Listen()) return FALSE; return TRUE; } /***************************************************************** **【函数名称】 OnAccept **【函数功能】 客户端连接请求事件响应(重写) **【参数】 **【返回值】 ****************************************************************/ void CPduSocketServer::OnAccept(int nErrorCode) { // 响应客户端的连接请求 CPduSocket* pClient = new CPduSocket(m_pParent, PDU_LINK_TYPE_SERVER, false); if(Accept(*pClient)) { m_pParent->OnConnEstablished(pClient); // 连接建立 } // end if CAsyncSocket::OnAccept(nErrorCode); }