欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

Visual C++网络编程(黑客)学习笔记二

Visual C++网络编程(黑客)学习笔记二

初始化WinSock的动态链接库之后,需要在服务器端建立一个用来监听的Socket句柄,可以调用Socket()函数用来建立这个监听的Socket句柄,并定义此Socket所使用的通信协议。
Socket的原型:
SOCKET socket(
       int  af,
       int  type,
       int  protocol
);
函数参数解释:
af:指定应用程序使用的通信协议的协议族。对于TCP/IP族,该参数设为FF_INET.
type:指定要创建的套接字类型。
protocol:指定应用程序所使用的通信协议。
在Winsock 2中,type支持以下3种类型。
(1)SOCK_STREAM:流式套接字。
(2)SOCK_DGRAM:数据报套接字。
(3)SCOK_RAW:原始套接字。
在Winsock 2中,protocol支持以下3种类型。
(1)IPPROTO_UDP:UDP协议,用于无连接数据报套接字。
(2)IPPROTO_TCP:TCP协议,用于流套接字。
(3)IPPROTO_ICMP:ICMP协议,用于原始套接字。
该函数调用成功则返回Socket对象,失败则返回INVALID_SOCKET(调用WSAGetLastError()可知函数调用失败的原因,所有WinSocket的函数都可以使用这个函数来获取调用失败的原因。)
在Windows程序中,并不是用内存的物理地址来标识内存块,文件,任务或者动态装入的模块;相反Windows API给这些项目分配确定的句柄,并将句柄返回给应用程序,然后通过句柄来进行操作。
提示:句柄是 Windows用来标识被应用程序所建立或使用的对象的唯一整数。Windows使用各种各样的句柄标志,如应用程序实例,窗口,控件,位图,GDI对象等。一个Windows应用程序可以用不同的方法获得一个特定项的句柄。通常Windows通过应用程序的引出函数将一个句柄作为参数传给应用程序,应用程序一旦获得了一个确定的句柄,便可以在Windows环境下的任何地方对这个句柄进行操作。

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功