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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bvsocket.cpp

?? 網絡電話例程
?? CPP
字號:
// BvSocket.cpp: implementation of the CBvSocket class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Phone.h"
#include "BvSocket.h"

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

#pragma comment(lib, "wsock32")
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CBvSocket::CBvSocket()
{

}

CBvSocket::~CBvSocket()
{

}

void CBvSocket::ReportWinsockErr(LPSTR lpszErrorMsg)
{
	char chMsgBuffer[100];

	wsprintf(chMsgBuffer, "\nWinsock error %d: %s\n\n", WSAGetLastError(), lpszErrorMsg);
	MessageBox(NULL,chMsgBuffer,  AfxGetAppName(), MB_OK|MB_ICONSTOP);
	return;   
}

BOOL CBvSocket::Init(WSADATA* wsaData)
{
	if (WSAStartup(WINSOCK_VERSION,wsaData))
	{
		MessageBeep(MB_ICONSTOP);
		MessageBox(NULL,"Winsock could not be initialized!", AfxGetAppName(), MB_OK|MB_ICONSTOP);
	    WSACleanup();
	    return(FALSE);
	}                  
	return TRUE;
}

BOOL CBvSocket::Clean()
{
	int iErrorCode;
	char chMsgBuffer[100];

	if ((iErrorCode = WSACleanup()))
	{
		wsprintf(chMsgBuffer, "Winsock error %d.", iErrorCode);
		MessageBeep(MB_ICONSTOP);
		MessageBox(NULL, chMsgBuffer,  AfxGetAppName(), MB_OK|MB_ICONSTOP);   
		return FALSE;
    }
	return TRUE;
}

BOOL CBvSocket::GetHostName(char *name, int namelen)
//determine if the local machine is on_line!
{
	if (gethostname(name, namelen))
	{
		ReportWinsockErr("\nCould not resolve local host!\nAre you on-line?\n");
		return FALSE;
	}
	return TRUE;
}

BOOL CBvSocket::Create()
//Create the default socket for general use!
{
	m_hSocket=socket(PF_INET, SOCK_STREAM, 0);
	if (m_hSocket == INVALID_SOCKET)
	{
		ReportWinsockErr("Could not create server socket.");
		return FALSE;
	}
	return TRUE;
}

BOOL CBvSocket::Create(int af, int type, int protocol)
//you can create the socket using the socket,there is equal!
{
	m_hSocket=socket(af,type,protocol);
	if (m_hSocket == INVALID_SOCKET)
	{
		ReportWinsockErr("Could not create server socket.");
		return FALSE;
	}
	return TRUE;
}

void CBvSocket::SetAddrIn(const char FAR* ip, unsigned short port)
//you can set you socket address using the doted string format.
{
	m_addrSocket.sin_family=AF_INET;
	m_addrSocket.sin_addr.S_un.S_addr=inet_addr(ip);
	m_addrSocket.sin_port=htons(port);
}

void CBvSocket::SetAddrIn(unsigned short port)
//you can also let the windows to process the ip,if your machine have
//more than one ip.
{
	m_addrSocket.sin_family=AF_INET;
	m_addrSocket.sin_addr.S_un.S_addr=INADDR_ANY;
	m_addrSocket.sin_port=htons(port);
}

BOOL CBvSocket::Bind()
//if you have used SetAddrIn() create the socket address,you can call
//this default bind function to name the unnamed socket address.
{
	if (bind(m_hSocket,(LPSOCKADDR)&m_addrSocket,sizeof(m_addrSocket)) == SOCKET_ERROR)
	{
		ReportWinsockErr("Could not bind server socket.");
		return FALSE;
	 }
	return TRUE;
}

BOOL CBvSocket::Bind(unsigned short port)
//you can also combine setaddrin() and bind() in one function.
{
	SetAddrIn(port);
	return	Bind();
}

BOOL CBvSocket::Bind(const char *ip, unsigned short port)
//you can also combine setaddrin() and bind() in one function.
//see the description of the SetAddrIn(const char *ip, unsigned short port).
{
	SetAddrIn(ip,port);
	return Bind();
}

BOOL CBvSocket::AsyncSelect(HWND hWnd, unsigned int wMsg, long lEvent)
//This function is just to call the WSAAsyncSelect(...)function,
//wMsg is the user defined Message constant,
//for more information, you can look the MSDN,you also can read a example project.
{
	int iErrorCode = WSAAsyncSelect(m_hSocket, hWnd, wMsg,lEvent);
	if (iErrorCode == SOCKET_ERROR) 
	{
		ReportWinsockErr("WSAAsyncSelect failed on server socket.");
		return FALSE;
	}
	return TRUE;
}

BOOL CBvSocket::Listen()
//just the simple call listen
{
	if (listen(m_hSocket, 5) == SOCKET_ERROR)
	{
		ReportWinsockErr("Server socket failed to listen.");
		return FALSE;
	}
	return TRUE;
}

BOOL CBvSocket::Listen(int queue_size)
//you can set the queue size,using this function.
{
	if (listen(m_hSocket, queue_size) == SOCKET_ERROR)
	{
		ReportWinsockErr("Server socket failed to listen.");
		return FALSE;
	}
	return TRUE;
}

BOOL CBvSocket::Listen(int queue_size,HWND hWnd, unsigned int wMsg)
{
	if(!WSAAsyncSelect(m_hSocket,hWnd,wMsg,FD_ACCEPT))
		return FALSE;
	if(!Listen(queue_size))
		return FALSE;
	return TRUE;
}

BOOL CBvSocket::EndListen()
{
	Close();
	return TRUE;
}

BOOL CBvSocket::Close()
{
	return closesocket(m_hSocket);
}


int CBvSocket::Recieve(char *buf, int len, int flags=0)
{
	return recv(m_hSocket,buf,len,flags);
}

int CBvSocket::Send(const char *buf, int len, int flags=0)
{
	return send(m_hSocket,buf,len,flags);
}

int CBvSocket::Connect()
{
	return connect(m_hSocket,(LPSOCKADDR)&m_addrSocket,sizeof(m_addrSocket));
}

int CBvSocket::SetSocketOpt(int optname, const char *optval, 
							int optlen, int level=SOL_SOCKET)
//for more information you can see the msdn.
{
	return setsockopt(m_hSocket,level,optname,optval,optlen);
}


int CBvSocket::GetSocketOpt(int optname, char *optval,
							int *optlen, int level=SOL_SOCKET)
{
	return getsockopt(m_hSocket,level,optname,optval,optlen);
}

SOCKET CBvSocket::Accept(SOCKADDR *addr, int *addrlen)
{
	return accept(m_hSocket,addr,addrlen);
}


int CBvSocket::Connect(const char FAR* ip, unsigned short port)
{
	SetAddrIn(ip,port);
	return Connect();
}

BOOL CBvSocket::SetAddrIn(long ip, unsigned short port)
{
	return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
最新不卡av在线| 欧美一区二区三区不卡| 一区二区三区在线视频免费观看| 欧美高清性hdvideosex| av在线不卡网| 国内精品国产成人国产三级粉色 | 国产精品久久久久7777按摩| 欧美裸体bbwbbwbbw| 日韩不卡一区二区三区| 国产精品久久久久婷婷二区次| 欧美一区二区福利在线| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 国产在线一区观看| 捆绑调教一区二区三区| 午夜一区二区三区视频| 亚洲猫色日本管| 欧美激情在线观看视频免费| 精品国一区二区三区| 欧美老年两性高潮| 精品视频在线看| 欧美自拍偷拍一区| 91成人网在线| 日本高清无吗v一区| 色噜噜狠狠色综合欧洲selulu| 波多野结衣亚洲| www.久久久久久久久| 成人av先锋影音| 黑人精品欧美一区二区蜜桃| 精品一区二区在线看| 国产精品九色蝌蚪自拍| 国产精品嫩草影院av蜜臀| 久久久久久免费| 欧美日韩在线观看一区二区 | 欧美视频完全免费看| 国产不卡一区视频| 成人性生交大片免费看视频在线| 国产乱淫av一区二区三区 | aaa欧美色吧激情视频| 成人性生交大片免费看中文| 成a人片国产精品| 色屁屁一区二区| 欧美四级电影网| 91精品国产福利在线观看| 日韩一区二区电影| 久久这里只有精品首页| 国产精品视频免费| 亚洲日本免费电影| 亚洲电影一区二区| 日本91福利区| 国产成人在线看| 色欧美片视频在线观看在线视频| 欧美亚洲综合久久| 精品国产伦一区二区三区观看体验| 久久久蜜桃精品| 一级特黄大欧美久久久| 精久久久久久久久久久| k8久久久一区二区三区| 欧美本精品男人aⅴ天堂| 国产视频一区二区在线| 国产精品日韩成人| 亚洲午夜电影在线观看| 捆绑变态av一区二区三区| 精品无人码麻豆乱码1区2区| 91在线视频播放地址| 91精品国产欧美一区二区| 欧美韩国日本一区| 日韩av一二三| 91免费精品国自产拍在线不卡| 日韩一区二区三区在线视频| 国产精品久久久久久久第一福利| 午夜电影网亚洲视频| 国产白丝网站精品污在线入口| 欧美美女一区二区三区| 欧美激情在线看| 久久精品国产澳门| 欧美中文字幕一区二区三区| 久久久久久久久99精品| 日本aⅴ免费视频一区二区三区| 白白色 亚洲乱淫| 色婷婷综合久久久中文一区二区 | 美国毛片一区二区三区| 日本伦理一区二区| 国产精品国产三级国产有无不卡| 裸体在线国模精品偷拍| 欧美日韩在线综合| 夜夜操天天操亚洲| 一本大道av伊人久久综合| 中文字幕欧美激情一区| 蜜臀精品一区二区三区在线观看| 在线观看日韩高清av| ...xxx性欧美| 91亚洲精华国产精华精华液| 国产欧美视频在线观看| 国产在线播放一区| 日韩免费一区二区| 韩国一区二区三区| 日韩精品一区二区三区三区免费| 亚洲成人777| 欧美色视频一区| 亚洲一级二级在线| 欧美系列日韩一区| 亚洲高清免费在线| 欧美日韩国产精品成人| 亚洲成av人影院| 欧美日韩日日骚| 樱花影视一区二区| 欧美又粗又大又爽| 亚洲一区二区黄色| 欧美日韩午夜在线| 一区二区三区高清在线| 欧美无砖专区一中文字| 亚洲国产cao| 日韩午夜激情av| 国产成人免费在线观看不卡| 国产日韩欧美a| 91香蕉视频黄| 天天影视网天天综合色在线播放| 欧美日韩国产一级| 五月天一区二区三区| 日韩精品一区二区三区四区视频 | 欧美做爰猛烈大尺度电影无法无天| 亚洲激情图片qvod| 在线成人午夜影院| 久久草av在线| 国产精品久久久久影院老司| 成人免费看视频| 国产精品国产三级国产a| 欧美日韩国产影片| 国产乱码精品一品二品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 91片在线免费观看| 蜜臀av性久久久久蜜臀aⅴ| 欧美性受xxxx| 国产日韩欧美制服另类| 伊人夜夜躁av伊人久久| 日本精品免费观看高清观看| 亚洲一卡二卡三卡四卡| 久久免费偷拍视频| 欧美欧美午夜aⅴ在线观看| 国产精品一色哟哟哟| 一二三区精品视频| 久久九九99视频| 91精品国产91久久久久久一区二区 | 中文乱码免费一区二区| 色婷婷av一区二区三区大白胸| 美女脱光内衣内裤视频久久影院| 国产精品久久久久永久免费观看| 91精品国产全国免费观看| 经典一区二区三区| 一区二区三区国产| 久久久99精品久久| 欧美美女直播网站| av亚洲精华国产精华精| 久久97超碰色| 午夜成人免费视频| 日韩理论电影院| 专区另类欧美日韩| 国产日韩欧美一区二区三区综合| 91精品国产综合久久国产大片| av高清不卡在线| 国产91精品入口| 蜜桃视频免费观看一区| 亚洲精品网站在线观看| 欧美一级搡bbbb搡bbbb| 91在线国内视频| 成人在线综合网站| 国产真实乱子伦精品视频| 男女性色大片免费观看一区二区| 尤物视频一区二区| 综合久久给合久久狠狠狠97色| 久久精品欧美日韩精品 | 亚洲第一二三四区| 久久人人超碰精品| 欧美成人bangbros| 欧美一区二区三区男人的天堂| 欧洲亚洲精品在线| 欧美日韩精品系列| 欧美日韩精品一区二区三区四区| 欧美午夜精品一区| 欧美日韩国产三级| 久久久青草青青国产亚洲免观| 综合激情成人伊人| 奇米777欧美一区二区| 国内精品久久久久影院薰衣草| 成人白浆超碰人人人人| 91黄色激情网站| 日韩欧美国产午夜精品| 国产欧美一区二区三区鸳鸯浴 | 欧美国产禁国产网站cc| 亚洲女与黑人做爰| 午夜a成v人精品| www.色综合.com| 欧美一卡在线观看| 国产精品成人免费| 老司机免费视频一区二区三区| 91麻豆国产在线观看| 久久久亚洲欧洲日产国码αv| 亚洲小说欧美激情另类| 国产美女娇喘av呻吟久久| 在线免费观看日韩欧美|