• 大小: 105KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: C/C++
  • 标签: scoket  异步通信  

资源简介

scoket 异步通信 一个服务端 多个客户端 服务端可以对连接到服务端的任何一个客户端通信 ,send 的消息是一个结构体 程序在VS2003 下 测试通过

资源截图

代码片段和文件信息

// Socketbase.cpp : 实现文件
//

#include “stdafx.h“
#include “Socketbase.h“


//////////////////////////////////////////////////////////////////////////
// CSocketbase 类 方法
CSocketbase::CSocketbase()
{
m_bAccept = FALSE;
}

CSocketbase::CSocketbase(CWnd * pParent UINT m_nMessageID)
{
m_UserMsg = m_nMessageID;
m_pWnd = pParent;
m_bAccept = FALSE;
}

CSocketbase::~CSocketbase()
{

}

void CSocketbase::OnClose(int nErrorCode)
{
char *Information=“one client is closed“;
if (m_pWnd!=NULL)
{
     m_pWnd->SendMessage(m_UserMsg 1(LPARAM)Information);
}

CAsyncSocket::OnClose(nErrorCode);
}

void CSocketbase::OnReceive(int nErrorCode)
{
if (m_bIsSever)
{
DWORD dSize=sizeof(m_tagCliMsg);
int m_nLength = Receive(&m_tagCliMsg dSize);

if (m_pWnd!=NULL)
{
m_pWnd->SendMessage(m_UserMsgm_tagCliMsg.nMessageFlag(LPARAM)m_tagCliMsg.strClientName);
}
}
else
{
DWORD dSize=sizeof(m_tagSerMag);
int m_nLength = Receive(&m_tagSerMag dSize);

if (m_pWnd!=NULL)
{
m_pWnd->SendMessage(m_UserMsg1(LPARAM)m_tagSerMag.stSerMessage);
}

}

}



void CSocketbase::SendMessage(tagServerMsg _tagSMsg)
{
if (m_bIsSever)
{
if(m_bAccept)
{

DWORD dSize=sizeof(_tagSMsg);
AsyncSelect(FD_WRITE);
while(Send(&_tagSMsg dSize) == SOCKET_ERROR);

//继续提请一个“读”的网络事件,接收Server消息
AsyncSelect(FD_READ | FD_CLOSE);
}
}
}

//////////////////////////////////////////////////////////////////////////

























 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2851  2009-11-09 17:00  Soceket\SocketCli\ReadMe.txt

     文件      21630  2003-04-01 04:36  Soceket\SocketCli\res\SocketCli.ico

     文件        698  2009-11-09 17:00  Soceket\SocketCli\res\SocketCli.manifest

     文件        365  2009-11-09 17:00  Soceket\SocketCli\res\SocketCli.rc2

     文件       1003  2009-11-10 11:25  Soceket\SocketCli\resource.h

     文件       1590  2009-11-10 17:57  Soceket\SocketCli\Socketbase.cpp

     文件        987  2009-11-10 17:57  Soceket\SocketCli\Socketbase.h

     文件      58476  2009-11-10 16:00  Soceket\SocketCli\SocketCli.aps

     文件       1571  2009-11-09 17:02  Soceket\SocketCli\SocketCli.cpp

     文件        455  2009-11-09 17:00  Soceket\SocketCli\SocketCli.h

     文件      60416  2009-11-10 18:36  Soceket\SocketCli\SocketCli.ncb

     文件       5578  2009-11-10 16:00  Soceket\SocketCli\SocketCli.rc

     文件        907  2009-11-09 17:00  Soceket\SocketCli\SocketCli.sln

    ..A..H.     11264  2009-11-10 18:36  Soceket\SocketCli\SocketCli.suo

     文件       4975  2009-11-10 10:46  Soceket\SocketCli\SocketCli.vcproj

     文件       5111  2009-11-10 16:03  Soceket\SocketCli\SocketCliDlg.cpp

     文件       1009  2009-11-10 11:24  Soceket\SocketCli\SocketCliDlg.h

     文件        625  2009-11-10 17:57  Soceket\SocketCli\SocketClient.cpp

     文件        350  2009-11-10 17:57  Soceket\SocketCli\SocketClient.h

     文件        138  2009-11-09 17:00  Soceket\SocketCli\stdafx.cpp

     文件       1480  2009-11-09 17:02  Soceket\SocketCli\stdafx.h

     文件       2851  2009-11-09 10:09  Soceket\SocketSer\ReadMe.txt

     文件      21630  2003-04-01 04:36  Soceket\SocketSer\res\SocketSer.ico

     文件        698  2009-11-09 10:09  Soceket\SocketSer\res\SocketSer.manifest

     文件        365  2009-11-09 10:09  Soceket\SocketSer\res\SocketSer.rc2

     文件        957  2009-11-10 15:57  Soceket\SocketSer\resource.h

     文件       1876  2009-11-10 17:56  Soceket\SocketSer\Socketbase.cpp

     文件       1014  2009-11-10 17:59  Soceket\SocketSer\Socketbase.h

     文件      58368  2009-11-10 15:58  Soceket\SocketSer\SocketSer.aps

     文件       1577  2009-11-09 11:34  Soceket\SocketSer\SocketSer.cpp

............此处省略20个文件信息

评论

共有 条评论