创建了一个CAsyncSocket的继承类CServerSocket,声称对象来接接收消息
CServerSocket::CServerSocket(void)
{
m_pView =NULL; // m_isConnected = FALSE;
}
CServerSocket::CServerSocket(CServerView* pView)
{
m_pView = pView;
}CServerSocket::~CServerSocket()
{
}
void CServerSocket::OnReceive(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
CServerView *pView = CServerView::GetView();
pView->OnReceive(nErrorCode); CAsyncSocket::OnReceive(nErrorCode);
}void CServerSocket::OnSend(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class CServerView *pView = CServerView::GetView();
pView->OnSend(nErrorCode);
CAsyncSocket::OnSend(nErrorCode);
}void CServerSocket::OnClose(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
// GetPeerName();
CServerView *pView = CServerView::GetView();
pView->OnClose(nErrorCode); CAsyncSocket::OnClose(nErrorCode);
}
void CServerSocket::OnConnect(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
if (nErrorCode==0)
{
m_isConnected = TRUE;
CServerView *pView = CServerView::GetView();
pView->OnConnect(nErrorCode); AsyncSelect(FD_READ); ////提请一个“读”的网络事件,准备接收
} CAsyncSocket::OnConnect(nErrorCode);
}另创建了一个继承类CNewSocket,来监听客户端的连接请求CNewSocket::CNewSocket()
{
}CNewSocket::~CNewSocket()
{
}void CNewSocket::OnAccept(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class CServerView *pView = CServerView::GetView();
pView->OnAccept(nErrorCode); CAsyncSocket::OnAccept(nErrorCode);
}问题是,能够监听到客户端的连接,并且向客户端发送消息客户端能够收到,但是,客户端发送消息给服务器时,函数CServerSocket::OnReceive(int nErrorCode)根本就不响应,请各位大虾指教??
CServerSocket::CServerSocket(void)
{
m_pView =NULL; // m_isConnected = FALSE;
}
CServerSocket::CServerSocket(CServerView* pView)
{
m_pView = pView;
}CServerSocket::~CServerSocket()
{
}
void CServerSocket::OnReceive(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
CServerView *pView = CServerView::GetView();
pView->OnReceive(nErrorCode); CAsyncSocket::OnReceive(nErrorCode);
}void CServerSocket::OnSend(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class CServerView *pView = CServerView::GetView();
pView->OnSend(nErrorCode);
CAsyncSocket::OnSend(nErrorCode);
}void CServerSocket::OnClose(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
// GetPeerName();
CServerView *pView = CServerView::GetView();
pView->OnClose(nErrorCode); CAsyncSocket::OnClose(nErrorCode);
}
void CServerSocket::OnConnect(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class
if (nErrorCode==0)
{
m_isConnected = TRUE;
CServerView *pView = CServerView::GetView();
pView->OnConnect(nErrorCode); AsyncSelect(FD_READ); ////提请一个“读”的网络事件,准备接收
} CAsyncSocket::OnConnect(nErrorCode);
}另创建了一个继承类CNewSocket,来监听客户端的连接请求CNewSocket::CNewSocket()
{
}CNewSocket::~CNewSocket()
{
}void CNewSocket::OnAccept(int nErrorCode)
{
// TODO: Add your specialized code here and/or call the base class CServerView *pView = CServerView::GetView();
pView->OnAccept(nErrorCode); CAsyncSocket::OnAccept(nErrorCode);
}问题是,能够监听到客户端的连接,并且向客户端发送消息客户端能够收到,但是,客户端发送消息给服务器时,函数CServerSocket::OnReceive(int nErrorCode)根本就不响应,请各位大虾指教??
解决方案 »
- vc2005 操作 word2003 ?
- 用gdi+函数取得图像的HRGN
- 有个很少的C++源码急着需要翻译成其它源码,版主、高手请进。
- 菜鸟提问:关于odbc访问accee2000数据库问题
- 请教大家做在线升级程序,怎么实现好,给个思路啊 .
- 如何制作微软SmartPhone 上的plug in
- 奇怪的问题,我写的程序为何启动后一直是沙漏的指针?
- com的聚合疑问
- 请教一个简单问题。
- VC6.0 使用CImg类出现error C2039: 'FILE' : is not a member of 'std'
- 请教大家一个Receive的问题,新人,请大家一定帮忙.
- 求visual c++ 6 编程宝典的随书光盘!
应该对客户端socket描述字进行,而不是对listen的socket进行
我用CAsyncSocket类写了个服务端程序,但不知道怎么回事,当客户端连接后,我每次只能够收到最后一个连接的客户端的数据,断点调试发现CMyClientSocket的OnRecieve函数也只对最后一个连接的客户端有响应,这是怎么回事,请lz指教!