📄 socketobject.h
字号:
#include<winsock2.h>
#include<ws2tcpip.h>
#include<mstcpip.h>
#include<string>
using namespace std;
enum SOCKTYPE
{
sock_stream=SOCK_STREAM,
sock_dgram=SOCK_DGRAM,
sock_raw=SOCK_RAW
};
enum PROTOCAL
{
ipproto_ip=IPPROTO_IP,
ipproto_udp=IPPROTO_UDP,
//ipproro_rm=IPPROTO_RM
};
enum AF
{
af_unspec=AF_UNSPEC,
af_inet=AF_INET,
af_netbios=AF_NETBIOS,
af_inet6=AF_INET6,
af_irda=AF_IRDA
};
class SocketObject
{
public:
SocketObject();
~SocketObject();
SOCKET skSocket;
bool Create(AF af,SOCKTYPE socktype,PROTOCAL protocal);
bool Bind(int iPort);
bool Listen(int waitnum=32);
bool Accept(SocketObject& skAcceptSocket);
bool Connect(char* szServerAddress,int iPort);
int Send(char* szBuffer,int iBuflen,int iFlags=0);
int Sendto(char* szBuffer,int iBufflen,char* addr,int port);
int Recv(char* szBuffer,int iBuflen,int iFlags=0);
int Recvfrom(char* szBuffer,int iBuflen);
bool isAvailable();
bool Setsockopt(int level,int optname,const char* optval,int optlen);
void Disconnect();
string GetIP();
private:
sockaddr_in saClientAddress;
int iClientSize;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -