📄 udpsocket.h
字号:
/*------------------------------------------------------------------------------*\
=============================
模块名称: UDPSocket.h
=============================
[目的]
方便UDP的使用
[描述]
这是一个封装了UDP数据报传送的基类,功能比较基本,可以从它派生以扩展功能。这
个类并不是所有SOCKET函数的封装,而只是封装了一些用得比较多,并且使用较麻烦的
函数。
[用法]
这个模块用法很简单,如果有问题可参阅MSDN. :-)
[依赖性]
库
ws2_32.lib
[修改记录]
日期: 01-10-11
版本: 1.01
作者: Brant Q
备注:
[版权]
2000-2002 115软件工厂 版权所有
[声明]
\*------------------------------------------------------------------------------*/
#ifndef _UDPSOCKET_H_
#define _UDPSOCKET_H_
#define MAX_UDP_SIZE 4096
WORD InitializeSocket();
int CleanUpSocket();
class CUDPSocket
{
public:
BOOL IsSocket();
CUDPSocket();
virtual ~CUDPSocket();
BOOL Create(UINT uSocketPort=0,char* pszSockAddr=NULL);
int Destroy();
int SendTo(const char *pBuf,int iLen,char* pszRemoteSockAddr,unsigned short uPort) const;
int SendTo(const char *pBuf,int iLen,SOCKADDR* pRemoteAddr=NULL) const;
int RecvFrom(char *pBuf,int iLen,SOCKADDR* pRemoteAddr=NULL) const;
SOCKADDR_IN GetLocalAddr() const;
SOCKET GetSocket() const;
SOCKADDR_IN GetRemoteAddr() const;
SOCKADDR_IN SetRemoteAddr(const SOCKADDR_IN &NewRemoteAddr);
static u_long Name2Inet(LPCSTR szAddress);
static u_long GetLocal_in_addr();
protected:
SOCKET m_Socket;
SOCKADDR_IN m_LocalAddr;
SOCKADDR_IN m_RemoteAddr;
private:
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -