• 大小: 585KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-08-02
  • 语言: C/C++
  • 标签: 文件传输  

资源简介

这是一个基于UDP文件传输的工程,包括需求分析,概要设计和全部源代码。实现完整,包括完整注释。界面用MFC实现。实现了客户端与服务器的通信,包括文件传输和消息发送

资源截图

代码片段和文件信息

/**
**************************************************************************************
* @file ClientSocket.cpp
* @author       18班小队
* @version      v0.1
* @date         2014-04-11
* @brief        
                 
**************************************************************************************
* @attention

*
**************************************************************************************/

#include “stdafx.h“
#include “FileTransfers.h“
#include “ClientSocket.h“

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CClientSocket

CClientSocket::CClientSocket(CFileTransfersDlg* pdlgMain)
{
m_pdlgMain = pdlgMain;

m_pFile = NULL;
m_pArchiveIn = NULL;
m_pArchiveOut = NULL;
}

CClientSocket::CClientSocket()
{
m_pdlgMain = NULL;

m_pFile = NULL;
m_pArchiveIn = NULL;
m_pArchiveOut = NULL;
}

CClientSocket::~CClientSocket()
{
}


// Do not edit the following lines which are needed by ClassWizard.
#if 0
BEGIN_MESSAGE_MAP(CClientSocket CSocket)
//{{AFX_MSG_MAP(CClientSocket)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
#endif // 0

/////////////////////////////////////////////////////////////////////////////
// CClientSocket member functions

//串行化的初始化
void CClientSocket::Init()
{
m_pFile = new CSocketFile(this);
m_pArchiveIn = new CArchive(m_pFileCArchive::load);
m_pArchiveOut = new CArchive(m_pFileCArchive::store);
}

void CClientSocket::Abort()
{
if (m_pArchiveOut != NULL)
{
m_pArchiveOut->Abort();
delete m_pArchiveOut;
m_pArchiveOut = NULL;
}
}

BOOL CClientSocket::SendMsg(CMessage *pMsg)
{
if (m_pArchiveOut != NULL)
{
TRY
{
pMsg->Serialize(*m_pArchiveOut);
m_pArchiveOut->Flush();

return TRUE;
}
CATCH(CFileException e)
{
m_pArchiveOut->Abort();
delete m_pArchiveOut;
m_pArchiveOut = NULL;
}
END_CATCH
}

return FALSE;
}

void CClientSocket::ReceiveMsg(CMessage *pMsg)
{
pMsg->Serialize(*m_pArchiveIn);
}

void CClientSocket::OnReceive(int nErrorCode) 
{
m_pdlgMain->ProcessReceive(this);
CSocket::OnReceive(nErrorCode);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-04-18 12:08  03班_xxx组作业\
     目录           0  2014-04-18 12:07  03班_xxx组作业\01需求分析\
     文件      378673  2014-04-18 12:07  03班_xxx组作业\01需求分析\基于UDP协议的网络传输系统软件需求说明书.doc
     文件       52689  2014-04-11 14:50  03班_xxx组作业\01需求分析\基于UDP协议的网络传输系统软件需求跟踪矩阵.xlsx
     目录           0  2014-04-18 12:06  03班_xxx组作业\02概要设计\
     文件      272384  2014-04-06 19:32  03班_xxx组作业\02概要设计\客户端连接模块概要设计.doc
     文件      282112  2014-04-06 19:50  03班_xxx组作业\02概要设计\文件传输模块概要设计.doc
     文件      236544  2014-04-06 16:38  03班_xxx组作业\02概要设计\消息发送模块概要设计.doc
     目录           0  2014-04-18 12:06  03班_xxx组作业\03编码实现\
     目录           0  2014-04-18 12:06  03班_xxx组作业\03编码实现\FileTransfers\
     文件        2270  2014-04-11 12:59  03班_xxx组作业\03编码实现\FileTransfers\ClientSocket.cpp
     文件        1936  2014-04-11 12:56  03班_xxx组作业\03编码实现\FileTransfers\ClientSocket.h
     目录           0  2014-04-11 14:51  03班_xxx组作业\03编码实现\FileTransfers\Debug\
     文件       23164  2014-04-11 13:59  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.aps
     文件        2139  2014-04-11 14:41  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.clw
     文件        2611  2014-04-11 12:59  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.cpp
     文件        4684  2014-04-11 12:26  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.dsp
     文件         549  2003-08-04 17:07  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.dsw
     文件        1759  2014-04-11 12:57  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.h
     文件      115712  2014-04-11 14:51  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.ncb
     文件       48640  2014-04-11 14:51  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.opt
     文件        2939  2014-04-11 13:59  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.plg
     文件        7323  2014-04-11 12:27  03班_xxx组作业\03编码实现\FileTransfers\FileTransfers.rc
     文件       24115  2014-04-11 13:00  03班_xxx组作业\03编码实现\FileTransfers\FileTransfersDlg.cpp
     文件        3288  2014-04-11 12:57  03班_xxx组作业\03编码实现\FileTransfers\FileTransfersDlg.h
     文件        1349  2014-04-11 13:00  03班_xxx组作业\03编码实现\FileTransfers\ListenSocket.cpp
     文件        1731  2014-04-11 12:58  03班_xxx组作业\03编码实现\FileTransfers\ListenSocket.h
     文件        1170  2014-04-11 13:00  03班_xxx组作业\03编码实现\FileTransfers\Message.cpp
     文件         709  2014-04-11 12:58  03班_xxx组作业\03编码实现\FileTransfers\Message.h
     文件        3705  2003-08-04 17:07  03班_xxx组作业\03编码实现\FileTransfers\ReadMe.txt
     目录           0  2003-08-10 17:26  03班_xxx组作业\03编码实现\FileTransfers\Release\
............此处省略6个文件信息

评论

共有 条评论