导航:
论坛 -> 网络通讯
斑竹:liumazi,sephil
作者:
2004/3/8 16:10:44
标题:
我是一只小菜鸟,大家来看看 WINSOCKD 问题!
浏览:1997
加入我的收藏
楼主:
我想学winsock编程,刚起步,在delphi里要把winsock的头文件 winsock2.h放在那里,还有mswsock.h放在哪里?还说 在编译采用了winsock2.h的应用程序时,须连接到 ws2-32.lib库,这是什么意思?那么我又要把ws2-32.lib放到那里呢? 应用程序通过sockaddr-in结构来指定IP地址和服务器端口信息,该结构的格式如下 : struct sockaddr_in { short sin_family; u_short sin_port; struct in_addr sin_addr; char sin_zero[8]; } sin_addr 里面的东西是怎么定义的。还有 sin-zero[8]有什么用? 还有 u-short类型在delphi里是怎么表示的? 函数 int wsahtons(socket s, u_short hostshort, u_short far *lpnetshort) 参数 hostshort 代表的是什么?参数 lpnetshort代表的是什么? socket s; sockaddr tcpaddr; int port=5150; s=socket(af_inet,sock_stream,ipproto_tcp); tcpaddr.sin_family=af_inet; tcpaddr.sin_port=hosts(port); tcpaddr.sin_addr.s_addr=htonl(inaddr_any); bind(s,(soxkaddr*)&tcpaddr,sizeof(tcpaddr); 这句 tcpaddr.sin_addr.s_addr=htonl(inaddr_any);的 .s-addr代表的是什么? socket accept(sock s,struct sockaddr far* addr, int far* addrlen) struct sockaddr 的 sockaddr里面要定义些什么东西。 accept 函数返回以后,addr结构中会包含发出连接请求的那个客户机的 ipv4地址信息,请问 addr 是个什么结构,怎么定义的? socket newconnection; socket listeningsocket newcon_nection=acception(listeningsocket,(sockaddr*)&clientaddr,&clientaddrlen); 请问newcon_nection=acception(listeningsocket,(sockaddr*)&clientaddr,&clientaddrlen); 在 delphi里怎么表示? int bind(sock s,const struct sockaddr far* name ,int namelen); 参数 far* name ,是一个普通的缓冲区,根据所使用的按个协议,必须实际的填充一个大致缓冲区,并在调用bind时将其转换一个 struct sockaddr。请问这句话是什么意思。 winsock头文件将sockaddr类型定义为 struct sockaddr 。请问是不是说明,我们自己不需要定义struct sockaddr 了。
----------------------------------------------
lsh