• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

透析ICMP协议(二): Windows Socket 简介

发布: 2007-7-01 20:40 | 作者: admin | 来源: | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网

透析ICMP协议(二):
 Windows Socket 简介
===============================
这篇文章出自bugfree/CSDN
平台: VC6 Windows XP

简介:
-------
 Windows 的Socket函数有许多, 我没有做详细介绍, 这里的函数都是简要说明其用途, 详细用法请参考MSDN.
 这里的主要目的是为了后面的三个应用服务.

函数说明:
--------- 

WSAStartup函数
 初始化Winsock
[声明]
 int WSAStarup(WORD wVersionRequested,LPWSADATA lpWSAData);
[参数]
 wVersionRequested - 要求使用Winsock的最低版本号
 lpWSAData - Winsock的详细资料
[返回值]
 当函数成功调用时返回0
 失败时返回非0的值
---

socket函数
 用于生成socket(soket Descriptor)
[声明]
 SOCKET socket(int af,int type,int protocol);
[参数]
 af - 地址家族(通常使用:AF_INET)
 type - socket的种类
 SOCK_STREAM : 用于TCP协议
 SOCK_DGRAM : 用于UDP协议
 protocol - 所使用的协议
[返回值]
 当函数成功调用时返回一个新的SOCKET(Socket Descriptor)
 失败时返回INVALID_SOCKET.
---

inet_addr函数
 地址转换, 把"A.B.C.D"的IP地址转换为32位长整数
[声明]
 unsigned long inet_addr ( const char FAR *cp );
[参数]
 cp - 指向IP地址字符串的指针
[返回值]
 当函数成功调用时返回用32位整数表示的IP地址
 失败时返回INADDR_NONE.
---

gethostbyname函数
 从主机名获取主机信息.
[声明]
 struct hostent FAR * gethostbyname ( const char FAR *name );
[参数]
 name - 指向主机名字符串的指针
[返回值]
 当函数成功调用时返回主机信息
 失败时返回NULL(空值)

---

recv函数
 利用Socket进行接受数据.
[声明]
 int recv ( SOCKET s , char FAR *buf , int len , int flags );
[参数]
 s - 指向用Socket函数生成的Socket Descriptor
 buf - 接受数据的缓冲区(数组)的指针
 len - 缓冲区的大小
 flag - 调用方式(MSG_PEEK 或 MSG_OOB)
[返回值]
 成功时返回收到的字节数.
 如果连接被中断则返回0
 失败时返回 SOCKET_ERROR

---

sendto函数
 发送数据.
[声明]
 int sendto ( SOCKET s , const char FAR *buf , int len , int flags , const struct sockaddr FAR *to , int token );
[参数]
 s - 指向用Socket函数生成的Socket Descriptor
 buf - 接受数据的缓冲区(数组)的指针
 len - 缓冲区的大小
 flag - 调用方式(MSG_DONTROUTE , MSG_OOB)
 to - 指向发送方SOCKET地址的指针
 token - 发送方SOCKET地址的大小
[返回值]
 成功时返回已经发送的字节数.
 失败时返回SOCKET_ERROR


链接:
-------
我的其它文章,<<透析ICMP协议>>, 和其它文章参见:

联系方式:
-------
   


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网