⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 f-b1.html

📁 WinSock编程规范及应用
💻 HTML
📖 第 1 页 / 共 4 页
字号:
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">/* Socket function prototypes */</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">#ifdef __cplusplus</P>
<P ALIGN="JUSTIFY">extern "C" {</P>
<P ALIGN="JUSTIFY">#endif</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">SOCKET PASCAL FAR accept (SOCKET s, struct sockaddr FAR *addr,</P>
<P ALIGN="JUSTIFY">                          int FAR *addrlen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR bind (SOCKET s, const struct sockaddr FAR *addr, int namelen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR closesocket (SOCKET s);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR connect (SOCKET s, const struct sockaddr FAR *name, int namelen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR ioctlsocket (SOCKET s, long cmd, u_long FAR *argp);</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">int PASCAL FAR getpeername (SOCKET s, struct sockaddr FAR *name,</P>
<P ALIGN="JUSTIFY">                            int FAR * namelen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR getsockname (SOCKET s, struct sockaddr FAR *name,</P>
<P ALIGN="JUSTIFY">                            int FAR * namelen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR getsockopt (SOCKET s, int level, int optname,</P>
<P ALIGN="JUSTIFY">                           char FAR * optval, int FAR *optlen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">u_long PASCAL FAR htonl (u_long hostlong);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">u_short PASCAL FAR htons (u_short hostshort);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">unsigned long PASCAL FAR inet_addr (const char FAR * cp);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">char FAR * PASCAL FAR inet_ntoa (struct in_addr in);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR listen (SOCKET s, int backlog);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">u_long PASCAL FAR ntohl (u_long netlong);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">u_short PASCAL FAR ntohs (u_short netshort);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR recv (SOCKET s, char FAR * buf, int len, int flags);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR recvfrom (SOCKET s, char FAR * buf, int len, int flags,</P>
<P ALIGN="JUSTIFY">                         struct sockaddr FAR *from, int FAR * fromlen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR select (int nfds, fd_set FAR *readfds, fd_set FAR *writefds,</P>
<P ALIGN="JUSTIFY">                       fd_set FAR *exceptfds, const struct timeval FAR *timeout);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR send (SOCKET s, const char FAR * buf, int len, int flags);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR sendto (SOCKET s, const char FAR * buf, int len, int flags,</P>
<P ALIGN="JUSTIFY">                       const struct sockaddr FAR *to, int tolen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR setsockopt (SOCKET s, int level, int optname,</P>
<P ALIGN="JUSTIFY">                           const char FAR * optval, int optlen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR shutdown (SOCKET s, int how);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">SOCKET PASCAL FAR socket (int af, int type, int protocol);</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">/* Database function prototypes */</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">struct hostent FAR * PASCAL FAR gethostbyaddr(const char FAR * addr,</P>
<P ALIGN="JUSTIFY">                                              int len, int type);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">struct hostent FAR * PASCAL FAR gethostbyname(const char FAR * name);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR gethostname (char FAR * name, int namelen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">struct servent FAR * PASCAL FAR getservbyport(int port, const char FAR * proto);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">struct servent FAR * PASCAL FAR getservbyname(const char FAR * name,</P>
<P ALIGN="JUSTIFY">                                              const char FAR * proto);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">struct protoent FAR * PASCAL FAR getprotobynumber(int proto);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">struct protoent FAR * PASCAL FAR getprotobyname(const char FAR * name);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">/* Microsoft Windows Extension function prototypes */</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR WSAStartup(WORD wVersionRequired, LPWSADATA lpWSAData);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR WSACleanup(void);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">void PASCAL FAR WSASetLastError(int iError);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR WSAGetLastError(void);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">BOOL PASCAL FAR WSAIsBlocking(void);</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">int PASCAL FAR WSAUnhookBlockingHook(void);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">FARPROC PASCAL FAR WSASetBlockingHook(FARPROC lpBlockFunc);</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">int PASCAL FAR WSACancelBlockingCall(void);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetServByName(HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                                        const char FAR * name, </P>
<P ALIGN="JUSTIFY">                                        const char FAR * proto,</P>
<P ALIGN="JUSTIFY">                                        char FAR * buf, int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetServByPort(HWND hWnd, u_int wMsg, int port,</P>
<P ALIGN="JUSTIFY">                                        const char FAR * proto, char FAR * buf,</P>
<P ALIGN="JUSTIFY">                                        int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetProtoByName(HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                                         const char FAR * name, char FAR * buf,</P>
<P ALIGN="JUSTIFY">                                         int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetProtoByNumber(HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                                           int number, char FAR * buf,</P>
<P ALIGN="JUSTIFY">                                           int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetHostByName(HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                                        const char FAR * name, char FAR * buf,</P>
<P ALIGN="JUSTIFY">                                        int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">HANDLE PASCAL FAR WSAAsyncGetHostByAddr(HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                                        const char FAR * addr, int len, int type,</P>
<P ALIGN="JUSTIFY">                                        const char FAR * buf, int buflen);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR WSACancelAsyncRequest(HANDLE hAsyncTaskHandle);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">int PASCAL FAR WSAAsyncSelect(SOCKET s, HWND hWnd, u_int wMsg,</P>
<P ALIGN="JUSTIFY">                               long lEvent);</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">#ifdef __cplusplus</P>
<P ALIGN="JUSTIFY">}</P>
<P ALIGN="JUSTIFY">#endif</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">/* Microsoft Windows Extended data types */</P>
<P ALIGN="JUSTIFY">typedef struct sockaddr SOCKADDR;</P>
<P ALIGN="JUSTIFY">typedef struct sockaddr *PSOCKADDR;</P>
<P ALIGN="JUSTIFY">typedef struct sockaddr FAR *LPSOCKADDR;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct sockaddr_in SOCKADDR_IN;</P>
<P ALIGN="JUSTIFY">typedef struct sockaddr_in *PSOCKADDR_IN;</P>
<P ALIGN="JUSTIFY">typedef struct sockaddr_in FAR *LPSOCKADDR_IN;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct linger LINGER;</P>
<P ALIGN="JUSTIFY">typedef struct linger *PLINGER;</P>
<P ALIGN="JUSTIFY">typedef struct linger FAR *LPLINGER;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct in_addr IN_ADDR;</P>
<P ALIGN="JUSTIFY">typedef struct in_addr *PIN_ADDR;</P>
<P ALIGN="JUSTIFY">typedef struct in_addr FAR *LPIN_ADDR;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct fd_set FD_SET;</P>
<P ALIGN="JUSTIFY">typedef struct fd_set *PFD_SET;</P>
<P ALIGN="JUSTIFY">typedef struct fd_set FAR *LPFD_SET;</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">typedef struct hostent HOSTENT;</P>
<P ALIGN="JUSTIFY">typedef struct hostent *PHOSTENT;</P>
<P ALIGN="JUSTIFY">typedef struct hostent FAR *LPHOSTENT;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct servent SERVENT;</P>
<P ALIGN="JUSTIFY">typedef struct servent *PSERVENT;</P>
<P ALIGN="JUSTIFY">typedef struct servent FAR *LPSERVENT;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct protoent PROTOENT;</P>
<P ALIGN="JUSTIFY">typedef struct protoent *PPROTOENT;</P>
<P ALIGN="JUSTIFY">typedef struct protoent FAR *LPPROTOENT;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">typedef struct timeval TIMEVAL;</P>
<P ALIGN="JUSTIFY">typedef struct timeval *PTIMEVAL;</P>
<P ALIGN="JUSTIFY">typedef struct timeval FAR *LPTIMEVAL;</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * Windows message parameter composition and decomposition</P>
<P ALIGN="JUSTIFY"> * macros.</P>
<P ALIGN="JUSTIFY"> *</P>
<P ALIGN="JUSTIFY"> * WSAMAKEASYNCREPLY is intended for use by the Windows Sockets implementation</P>
<P ALIGN="JUSTIFY"> * when constructing the response to a WSAAsyncGetXByY() routine.</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAMAKEASYNCREPLY(buflen,error)     MAKELONG(buflen,error)</P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * WSAMAKESELECTREPLY is intended for use by the Windows Sockets implementation</P>
<P ALIGN="JUSTIFY"> * when constructing the response to WSAAsyncSelect().</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAMAKESELECTREPLY(event,error)     MAKELONG(event,error)</P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * WSAGETASYNCBUFLEN is intended for use by the Windows Sockets application</P>
<P ALIGN="JUSTIFY"> * to extract the buffer length from the lParam in the response</P>
<P ALIGN="JUSTIFY"> * to a WSAGetXByY().</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAGETASYNCBUFLEN(lParam)           LOWORD(lParam)</P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * WSAGETASYNCERROR is intended for use by the Windows Sockets application</P>
<P ALIGN="JUSTIFY"> * to extract the error code from the lParam in the response</P>
<P ALIGN="JUSTIFY"> * to a WSAGetXByY().</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAGETASYNCERROR(lParam)            HIWORD(lParam)</P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * WSAGETSELECTEVENT is intended for use by the Windows Sockets application</P>
<P ALIGN="JUSTIFY"> * to extract the event code from the lParam in the response</P>
<P ALIGN="JUSTIFY"> * to a WSAAsyncSelect().</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAGETSELECTEVENT(lParam)           LOWORD(lParam)</P>
<P ALIGN="JUSTIFY">/*</P>
<P ALIGN="JUSTIFY"> * WSAGETSELECTERROR is intended for use by the Windows Sockets application</P>
<P ALIGN="JUSTIFY"> * to extract the error code from the lParam in the response</P>
<P ALIGN="JUSTIFY"> * to a WSAAsyncSelect().</P>
<P ALIGN="JUSTIFY"> */</P>
<P ALIGN="JUSTIFY">#define WSAGETSELECTERROR(lParam)           HIWORD(lParam)</P>
<P ALIGN="JUSTIFY"></P>
<P ALIGN="JUSTIFY">#endif  /* _WINSOCKAPI_ */</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY"></P></FONT></BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -