亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? socketmanager.cpp

?? tcp-udp高級程序設(shè)計
?? CPP
字號:
// SocketManager.cpp: implementation of the CSocketManager class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include <atlconv.h>
#include "ServerSocket.h"
#include "SocketManager.h"

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

/*
const UINT EVT_CONSUCCESS = 0x0000;	// Connection established
const UINT EVT_CONFAILURE = 0x0001;	// General failure - Wait Connection failed
const UINT EVT_CONDROP	  = 0x0002;	// Connection dropped
const UINT EVT_ZEROLENGTH = 0x0003;	// Zero length message
*/

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CSocketManager::CSocketManager()
: m_pMsgCtrl(NULL)
{

}

CSocketManager::~CSocketManager()
{

}

//顯示數(shù)據(jù)
void CSocketManager::DisplayData(const LPBYTE lpData, DWORD dwCount, const SockAddrIn& sfrom)
{
	CString strData;
	memcpy(strData.GetBuffer(dwCount), A2CT((LPSTR)lpData), dwCount);
	strData.ReleaseBuffer();
	//如果sfrom不為空
	if (!sfrom.IsNull())
	{
		LONG  uAddr = sfrom.GetIPAddr();
		BYTE* sAddr = (BYTE*) &uAddr;
		short nPort = ntohs( sfrom.GetPort() );	// 顯示端口
		CString strAddr;
		// 地址以網(wǎng)絡(luò)形式保存
		strAddr.Format(_T("%u.%u.%u.%u (%d)>"),
					(UINT)(sAddr[0]), (UINT)(sAddr[1]),
					(UINT)(sAddr[2]), (UINT)(sAddr[3]), nPort);
		//得到來源和數(shù)據(jù)
		strData = strAddr + strData;
	}

	//寫入信息
	AppendMessage( strData );
}


void CSocketManager::AppendMessage(LPCTSTR strText )
{
	if (NULL == m_pMsgCtrl)
		return;

	if (::IsWindow( m_pMsgCtrl->GetSafeHwnd() ))
	{
		int nLen = m_pMsgCtrl->GetWindowTextLength();
		m_pMsgCtrl->SetSel(nLen, nLen);
		m_pMsgCtrl->ReplaceSel( strText );
	}
}


void CSocketManager::SetMessageWindow(CEdit* pMsgCtrl)
{
	m_pMsgCtrl = pMsgCtrl;
}

//數(shù)據(jù)接收
void CSocketManager::OnDataReceived(const LPBYTE lpBuffer, DWORD dwCount)
{
	SockAddrIn saddr_in;
	LPBYTE lpData = lpBuffer;
	if (IsSmartAddressing())
	{
		saddr_in.SetAddr((SOCKADDR_IN*) lpBuffer);
		lpData = &lpData[sizeof(SOCKADDR_IN)];
		if (IsServer())
		{
			// 向所有客戶廣播
			SockAddrIn sdest_in;
			sdest_in.sockAddrIn.sin_addr.s_addr = htonl(INADDR_BROADCAST);
			memcpy(lpBuffer, (LPSOCKADDR)sdest_in, sdest_in.Size());
			WriteComm(lpBuffer, dwCount, 0L);
		}
		dwCount -= sizeof(SOCKADDR_IN);
	}

	// 顯示信息
	DisplayData( lpData, dwCount, saddr_in );
	return;
}

///////////////////////////////////////////////////////////////////////////////
// OnEvent
// Send message to parent window to indicate connection status

//發(fā)送消息到窗體已獲得相應(yīng)狀態(tài)
void CSocketManager::OnEvent(UINT uEvent)
{
	if (NULL == m_pMsgCtrl)
		return;

	CWnd* pParent = m_pMsgCtrl->GetParent();
	if (!::IsWindow( pParent->GetSafeHwnd()))
		return;

	switch( uEvent )
	{
		case EVT_CONSUCCESS:
			AppendMessage( _T("連接建立\r\n") );
			break;
		case EVT_CONFAILURE:
			AppendMessage( _T("連接失敗\r\n") );
			break;
		case EVT_CONDROP:
			AppendMessage( _T("連接放棄\r\n") );
			break;
		case EVT_ZEROLENGTH:
			AppendMessage( _T("零長度消息\r\n") );
			break;
		default:
			TRACE("不明socket事件\n");
			break;
	}

	pParent->PostMessage( WM_UPDATE_CONNECTION, uEvent, (LPARAM) this);

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品视频免费观看| 亚洲天堂成人在线观看| 国产欧美视频一区二区三区| 亚洲精品成人a在线观看| 久久国产福利国产秒拍| 一本大道久久a久久精二百| 精品国产区一区| 亚洲国产人成综合网站| 成人黄页在线观看| 精品国产人成亚洲区| 亚洲电影中文字幕在线观看| 成年人网站91| 久久午夜羞羞影院免费观看| 亚洲国产wwwccc36天堂| 97久久精品人人做人人爽50路| 欧美大尺度电影在线| 亚洲国产精品影院| 中文字幕在线不卡一区二区三区| av男人天堂一区| 不卡的av电影| 91黄色在线观看| 亚洲一区二区三区爽爽爽爽爽 | 国产成人精品www牛牛影视| 日韩一区二区在线看| 亚洲最大色网站| 欧美精品在线观看一区二区| 国产一区二区三区精品欧美日韩一区二区三区| 亚洲午夜精品一区二区三区他趣| 日韩三级高清在线| 欧美主播一区二区三区美女| 九九久久精品视频| 欧美日本在线播放| 中文字幕一区二区不卡| 在线视频一区二区三区| 99精品桃花视频在线观看| 亚洲精品一区二区三区蜜桃下载 | 97久久精品人人做人人爽50路 | 欧美视频一区二| 亚洲精品你懂的| 色先锋aa成人| 亚洲国产视频一区二区| 欧美日韩国产bt| 日本麻豆一区二区三区视频| 欧美一区二区三区视频在线观看| 天天av天天翘天天综合网色鬼国产| 日本精品视频一区二区三区| 亚洲在线观看免费| 国产三级欧美三级| 国产麻豆精品一区二区| 国产日韩欧美高清在线| 99riav一区二区三区| 一区二区三区中文字幕精品精品| 在线精品观看国产| 秋霞影院一区二区| 精品国产乱码久久久久久影片| 国产综合久久久久久鬼色| 欧美国产一区二区| 99热这里都是精品| 天天射综合影视| 26uuuu精品一区二区| 成人av网在线| 亚洲第一搞黄网站| 欧美mv日韩mv国产网站app| 国产精品123区| 一区二区三国产精华液| 欧美精品aⅴ在线视频| 国产精品一线二线三线| 亚洲视频免费在线观看| 69av一区二区三区| 国产成a人亚洲精品| 亚洲高清免费一级二级三级| 久久夜色精品国产欧美乱极品| 波多野结衣在线aⅴ中文字幕不卡| 亚洲国产一区二区三区| 精品国产1区二区| 91丝袜美女网| 久久成人麻豆午夜电影| 亚洲伦理在线精品| 日韩欧美一级二级三级久久久| 国产98色在线|日韩| 洋洋av久久久久久久一区| 26uuu国产日韩综合| 在线观看视频一区二区| 国产成人综合网| 天天色综合天天| 亚洲三级电影网站| 精品av综合导航| 欧美日韩成人在线一区| 成人国产精品免费观看| 老汉av免费一区二区三区| 亚洲日本va在线观看| 久久久美女艺术照精彩视频福利播放| 欧美亚洲国产一卡| 成av人片一区二区| 国产伦精品一区二区三区视频青涩 | a级高清视频欧美日韩| 日本不卡在线视频| 亚洲精品视频观看| 中文字幕一区视频| 中文字幕第一区第二区| 精品国一区二区三区| 这里只有精品99re| 欧美手机在线视频| 色狠狠综合天天综合综合| 粉嫩高潮美女一区二区三区| 久久99久久99精品免视看婷婷 | 日韩精品亚洲专区| 亚洲图片自拍偷拍| 亚洲免费电影在线| 亚洲欧美综合另类在线卡通| 久久精品在线观看| 精品免费国产二区三区| 日韩欧美精品在线视频| 日韩一级片在线观看| 欧美高清dvd| 欧美日韩国产成人在线免费| 欧美日韩在线综合| 欧美亚洲日本国产| 在线精品观看国产| 欧美日韩视频在线第一区| 欧美日韩国产影片| 宅男噜噜噜66一区二区66| 欧美挠脚心视频网站| 7777精品伊人久久久大香线蕉| 欧美日韩高清一区二区三区| 欧美一区二区三区四区在线观看| 3d动漫精品啪啪1区2区免费| 欧美一级欧美三级| 精品国产1区二区| 国产拍揄自揄精品视频麻豆| 国产精品全国免费观看高清| 国产精品国产三级国产普通话99| 最好看的中文字幕久久| 亚洲精品国产一区二区精华液 | 五月激情综合网| 日韩vs国产vs欧美| 国产乱码精品一区二区三区av| 国产精品99久| 91香蕉视频黄| 欧美精品三级日韩久久| 久久综合久久久久88| 18涩涩午夜精品.www| 亚洲成人www| 国产在线麻豆精品观看| 不卡av电影在线播放| 欧美丝袜自拍制服另类| 欧美mv和日韩mv国产网站| 中文字幕一区在线观看视频| 午夜精品国产更新| 国产成人无遮挡在线视频| 91麻豆精东视频| 91精品国产福利| 国产精品国产三级国产普通话99 | 北条麻妃国产九九精品视频| 欧美在线免费视屏| 久久夜色精品国产欧美乱极品| 亚洲欧洲综合另类在线| 日本女优在线视频一区二区| 成人一区在线观看| 欧美卡1卡2卡| 日本一区二区三级电影在线观看| 亚洲一区二区视频| 懂色av一区二区三区免费观看| 欧美体内she精视频| 国产色一区二区| 日本人妖一区二区| 一本一道综合狠狠老| 精品少妇一区二区三区免费观看| 一区二区三区**美女毛片| 国产精品一区二区在线观看不卡 | 国产99久久久久| 欧美精品在线一区二区| 中文字幕字幕中文在线中不卡视频| 日韩精品91亚洲二区在线观看| 99久久国产综合精品麻豆| 欧美va天堂va视频va在线| 亚洲一二三区在线观看| 不卡欧美aaaaa| 久久久午夜电影| 美女性感视频久久| 91激情五月电影| 1024成人网色www| 国产成人欧美日韩在线电影| 欧美精品xxxxbbbb| 亚洲成人av在线电影| 91色|porny| 中文字幕中文字幕一区二区| 国产激情视频一区二区在线观看 | 久久久久久**毛片大全| 图片区日韩欧美亚洲| 91久久精品网| 亚洲免费观看高清在线观看| 国产91精品一区二区麻豆亚洲| 精品久久久久久久久久久院品网 | 国产精品久久久久aaaa| 国产99久久精品| 久久精品人人爽人人爽| 久久国产夜色精品鲁鲁99| 欧美老肥妇做.爰bbww视频| 午夜影视日本亚洲欧洲精品|