基于MFC的网络版连连看系统_源文件


连连看是以VC6.0为平台,用标准C++语言、基于微软MFC类库完成的一个简单的软件。整套软件由客户端程序和服务器端程序构成,客户端运行在玩家的个人电脑上,所有操作均通过网络通讯向服务器发送请求,并接受服务器端程序处理的结果。客户端主要处理游戏界面显示,主要包括:玩家注册、游戏登录、大厅浏览、参与游戏、游戏旁观、各玩家游戏缩略图以及查看玩家游戏积分等功能。服务器端处理客户端的各种业务请求,主要包括:用户注册、玩家登陆、进入房间、入座、准备、开始游戏等功能。
资源截图
代码片段和文件信息
// Socket1.cpp: implementation of the CSocket class.
//
//////////////////////////////////////////////////////////////////////

#include “stdafx.h“
#include “LianLianKanClient.h“
#include “AsyncSelectSocket.h“

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
SOCKET CAsyncSelectSocket::m_socket;
sockaddr_in CAsyncSelectSocket::m_servaddr;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CAsyncSelectSocket::CAsyncSelectSocket()
{
memset(&m_servaddr0sizeof(m_servaddr));
m_servaddr.sin_family = AF_INET;
m_servaddr.sin_addr.s_addr = inet_addr(“127.0.0.1“);
m_servaddr.sin_port = htons(5555);
//  memset(&servaddr0sizeof(servaddr));
//  servaddr.sin_family = AF_INET;
//  servaddr.sin_addr.s_addr = inet_addr(“127.0.0.1“);
//  servaddr.sin_port = htons(5555);
}

CAsyncSelectSocket::~CAsyncSelectSocket()
{

}
BOOL CAsyncSelectSocket::StartSocket()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;

wVersionRequested = MAKEWORD( 2 2 );

err = WSAStartup(wVersionRequested &wsaData );
if ( err != 0 ) {
return FALSE;
}

if ( LOBYTE( wsaData.wVersion ) != 2 ||
        HIBYTE( wsaData.wVersion ) != 2 ) {
WSACleanup( );
return FALSE; 
}

// SOCKET udpSocket;
// sockaddr_in servaddr;

if ((m_socket = socket(AF_INETSOCK_DGRAM0)) == INVALID_SOCKET)
{
// cout<<“socket() failed error code = “< return FALSE;
}


int opt = 1;
if (setsockopt(m_socketSOL_SOCKETSO_REUSEADDR(const char*)&optsizeof(opt)) == SOCKET_ERROR)
{
// cout<<“setsockopt() failed error code = “< return FALSE;
}

//  if (bind(m_socket(sockaddr*)&m_servaddrsizeof(m_servaddr)) == SOCKET_ERROR)
//  {
//  // cout<<“bind() failed error code = “<//  return FALSE;
//  }

ULONG nonBlock= 1;
if (ioctlsocket(m_socket FIONBIO &nonBlock) == SOCKET_ERROR)
{
// cout<<“ioctlsocket() failed error code = “< return FALSE;
}
CWnd* hWnd = ((CLianLianKanClientApp*)AfxGetApp())->ChildWnds[GET_MESSAGE_WIN];
WSAAsyncSelect(m_sockethWnd->m_hWndWM_SERVICE_MSGFD_READ);
return TRUE;
}
// void CSocket::StopSocket()
// {
//  closesocket(m_socket);
//  WSACleanup();
// }
int CAsyncSelectSocket::SendToService(char *bufint total)
{
int re = 0send_len = 0;
while (send_len < total)
{
re = sendto(m_socketbuftotal0(sockaddr*)&m_servaddrsizeof(m_servaddr));
if(SOCKET_ERROR == re)
return FALSE;
send_len += re;
}
return send_len;
}

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

     文件        238  2010-03-17 14:00  基于MFC的网络版连连看系统_源文件LianLianKanClient2.bmp

     文件       1862  2010-03-19 13:41  基于MFC的网络版连连看系统_源文件LianLianKanClient1.bmp

     文件       2745  2010-04-11 09:45  基于MFC的网络版连连看系统_源文件LianLianKanClientAsyncSelectSocket.cpp

     文件       1204  2010-04-11 11:31  基于MFC的网络版连连看系统_源文件LianLianKanClientAsyncSelectSocket.h

     文件       2846  2010-04-07 12:51  基于MFC的网络版连连看系统_源文件LianLianKanClientConfigFile.cpp

     文件       1134  2010-04-07 11:25  基于MFC的网络版连连看系统_源文件LianLianKanClientConfigFile.h

     文件      43011  2010-05-23 21:27  基于MFC的网络版连连看系统_源文件LianLianKanClientGameing.cpp

     文件       4499  2010-05-22 20:59  基于MFC的网络版连连看系统_源文件LianLianKanClientGameing.h

     文件     280220  2011-02-08 13:56  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.aps

     文件       6294  2011-02-10 20:04  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.clw

     文件       2779  2010-05-11 21:37  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.cpp

     文件       7259  2011-02-10 21:00  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.dsp

     文件        557  2010-04-06 13:07  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.dsw

     文件       1558  2010-05-15 23:30  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.h

     文件    1123328  2011-02-17 22:36  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.ncb

     文件      56832  2011-02-17 22:36  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.opt

     文件       2275  2011-02-10 21:14  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.plg

     文件      13886  2011-02-08 13:56  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.rc

     文件    3572736  2010-05-15 02:12  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient.vsd

     文件       3365  2010-04-05 20:40  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClient1.clw

     文件      18311  2010-05-25 00:19  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClientDlg.cpp

     文件       3158  2010-05-23 10:19  基于MFC的网络版连连看系统_源文件LianLianKanClientLianLianKanClientDlg.h

     文件       6750  2010-05-23 21:10  基于MFC的网络版连连看系统_源文件LianLianKanClientLoginDlg.cpp

     文件       1716  2010-04-08 10:10  基于MFC的网络版连连看系统_源文件LianLianKanClientLoginDlg.h

     文件       3777  2010-04-06 13:01  基于MFC的网络版连连看系统_源文件LianLianKanClientReadMe.txt

     文件       5510  2010-05-25 21:08  基于MFC的网络版连连看系统_源文件LianLianKanClientRegeditDlg.cpp

     文件       1583  2010-04-09 14:34  基于MFC的网络版连连看系统_源文件LianLianKanClientRegeditDlg.h

     文件        374  2010-03-16 14:23  基于MFC的网络版连连看系统_源文件LianLianKanClient
esitmap1.bmp

     文件        614  2010-03-19 13:32  基于MFC的网络版连连看系统_源文件LianLianKanClient
esitmap3.bmp

     文件       1142  2010-04-08 11:13  基于MFC的网络版连连看系统_源文件LianLianKanClient
esitmap4.bmp

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)