📄 sersocket.cpp
字号:
// SerSocket.cpp: implementation of the CSerSocket class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "SPSer.h"
#include "SerSocket.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CSerSocket::CSerSocket()
{
}
CSerSocket::~CSerSocket()
{
}
/*
bool CSerSocket::InitNetwork(const CString& strIPAddr, int nPort, HWND hWnd)
{
WSADATA wsaData;
//初始化TCP协议
BOOL ret = WSAStartup(MAKEWORD(2,2), &wsaData);
if(ret != 0)
{
AfxMessageBox("初始化网络协议失败!");
return FALSE;
}
//创建服务器端套接字
m_Socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if(m_Socket == INVALID_SOCKET)
{
AfxMessageBox("创建套接字失败!");
closesocket(m_Socket);
WSACleanup();
return FALSE;
}
//绑定到本地一个端口上
sockaddr_in localaddr;
localaddr.sin_family = AF_INET;
localaddr.sin_port = htons(nPort); //端口号不要与其他应用程序冲突
localaddr.sin_addr.s_addr = inet_addr(strIP);
if(Bind(m_Socket,(LPSOCKADDR)&localaddr,sizeof(localaddr)) == SOCKET_ERROR)
{
AfxMessageBox("连接网关失败!");
closesocket(m_Socket);
WSACleanup();
return FALSE;
}
//将SeverSock设置为异步非阻塞模式,并为它注册各种网络异步事件,其中m_hWnd
//为应用程序的主对话框或主窗口的句柄
if(WSAAsyncSelect(m_Socket, m_hWnd, NETWORK_EVENT, FD_CLOSE|FD_READ) == SOCKET_ERROR)
{
AfxMessageBox("注册网络异步事件失败!");
WSACleanup();
return FALSE;
}
return TRUE;
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -