Some basic socket functions

1.      WSAStartup(), WSACleanup()

int PASCAL WSAStartup(WORD,LPWSADATA);

int PASCAL WSACleanup(void);

You should only need to call these functions once each, the former when you initialize Winsock, and the latter when you are finished.

An application must call one WSACleanup call for every successful WSAStartup call to allow third-party DLLs to make use of a WS2_32.DLL on behalf of an application.

 

2.      bind()

For TCP/IP, if the port is specified as zero, the service provider assigns a unique port to the application with a value between 1024 and 5000.

The application can use getsockname() after calling bind to learn the address and the port that has been assigned to it.

If the Internet address is equal to INADDR_ANY, we dont call getsockname.

Binding to a specific port number other than port 0 is discouraged for client applications, since there is a danger of conflicting with another socket already using that port number.

 

3.      connect()

It can be used in both mode stream and data gram. Faint.

For a connectionless socket (for example, type SOCK_DGRAM), the operation performed by connect is merely to establish a default destination address that can be used on subsequent send/WSASend and recv/WSARecv calls. Any datagrams received from an address other than the destination address specified will be discarded.

 

4.      WSARecvFrom()

if LPWSAOVERLAPPED lpOverlapped is NULL, then the function act as a blocking mode asynchronous function; while if WSAOVERLAPPED is set, the function return immediately, if no error happen, and with an return value of ERROR_IO_PENDING, then we may wait for the event set in overlapped.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值