windows网络编程案例教程,windows网络编程基础教程第2版
本内容由系统网小编为大家分享,Windows系统安装教程、办公系统、软件怎么使用、软件使用教程、办公软件攻略等信息。
Winsock是Windows系统中使用Socket和网络编程接口的网络编程功能。
在共同的Windows平台上 Winsock有两个主要版本, 他有两个不同的版本。他们是Winsock1和Winsock2。您必须引用标题 WINSOCK. H 。如果申请是为了利用Winsock2而设置的,它将使用它。我们必须引用WINSICOCK2.H。还有另外一个 MSWSOCK。其目的是协助扩大Windows系统高性能网络方案。这是我们对2011年印度选举的特别报道的一部分。WSOCK32.LIB,图书馆文件,也需要。使用WINSOCK2.H.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.0WS2_32.LIB是必需的。如果我们使用 MSWSOCK。 H 的 API 扩展,MSWSOCK. Lib 需要 。正确引用了头文件,它也和适当的图书馆档案连在一起您为 WINSOCK 网络应用程序设置了环境 。
一般来说,OSI模式是更广为人知的网络模式。它分为七层,即物理层,数据链路层,网络层,传输层,会话层,表示层以及应用层。TCP/IP模式相当受欢迎。在Windows操作系统中TCP/IP协议模式也用于东道方和网络之间的通信。利用温索克编程也就是说,通信必须利用诸如TCP/IP等适当的议定书进行。
在温索克,提供了TCP/IP协议的合并地址,即袜子体结构,其具体定义可在MSDN找到:
其中:
Sin-Family的价值必须是AF_INET,它代表家庭,作为TCP/IP家庭。 我们知道,TCP/IP协议中的端对端通信是通过IP地址和港口号进行的。 In_addr 也是一种结构。 它的构造如下:注:具体应用和注释见MSDN。
本条随后将简要讨论TCP协议的实际执行情况。
在上述流程图中,将讨论实现过程,即以下功能:
1. 合成创建:采用对TCP协议进行预防,必须使用流程合成,因为TCP协议是用字节执行数据传输的。
[cpp] view plain copy
sockets; s=::socert(AF_INET,SOCK_SREAM,0);其中:
由于地址格式已按TCP/IP协议中规定的地址格式在 af 中定义,最后参数协议类型被指定为 0;
2、绑定地址信息
使用函数绑定() 将地址信息捆绑起来 。 此程序已经完成, 组合和地址信息都具有约束力 。
参照代码:
[cpp] view plain copy
sockaddr_inaddr; addr.sin_family=AF_INET; addr.sin_port=htons(80); addr.sin_addr.S_un.S_addr=INADDR_ANY; ::bind(s,(sockaddr)&addr,sizeod(addr));3. 作为TCP服务器,它必须始终处于监听状态,听取客户的连接请求,这是通过监听()方法实现的。
4. 这一功能与约束功能的结构相似,因为它发送客户的连接请求。
Sockaddr 将地址指针定义为服务器的地址指针。
五. 服务器接受客户端连接请求。 实现功能类似于接受( ) 、 结构连接( ) 和绑定( ), 但定义的结构指针应该是客户的地址指针 。
最后,本文件介绍了TCP协议执行守则,平台为Visionc+6.0。 实施控制平台方案。
服务器代码:
[cpp] view plain copy
#include <winsock2.h> //包含头文件
#include <stdio.h>
#include <windows.h>
# pragmacomment( lib, "WS2_ 32. lib () // 手机在行动区内的链接 )
Intmain () // 初始主机函数
{
WSADATatadata;//WSADATA 结构物体定义
WORDw = MakeWORD (2,0);/定义的Verion number
字符ztext[] = “欢迎使用” ; / 声明并初始化客户端的字符阵列 。
::WSAStartup(w,&data);//初始化套接字库
SOCKETs, s1;// 连接合成定义以及数据接收和发送合成把手
s= 套接字( AF_ INET, SOCK_ STREAM, 0;// TCP套接字创建)
Sockaddr_inaddr, addr2; // 套件地址地址结构定义
Intn = 大小( addr2) ; // 确定包装的地址结构的大小 。
我不知道你在说什么,Ardr.sin_family=AF_INET;//地址结构初始化
addr.sin_port=htons(75);
addr.sin_addr.S_un.S_addr=INADDR_ANY;
::bind(s,(sockaddr*)&addr,sizeof(addr));//绑定套接字
* 听(s),5;/电话
f 打印 (“ 服务开始” ); // 输出提示数据
while(true)
{
s1=::accept(s,(sockaddr*)&addr2,&n);//接受连接请求
if(s1!=NULL)
{
printf (“%s”已经连接到“int_intoa”(addr2)((sin_address));
向有 *Send(s1, sztext, 大小(sztext), 0) 的客户端发送字符阵列;
}
* 闭口室;// 套接字处理关闭
::closesocket(s1);
* WSACleanup();/Binder图书馆发行
如果符合条件( getchar () / ), 申请将被终止 。
{
返回0;//正常程序结束
}
else
{
* 睡眠(100);/应用睡眠0.001秒。
}
}
}
客户端代码:
[cpp] view plain copy
#include <winsock2.h> //包含头文件
#include <stdio.h>
#include <windows.h>
# pragmacomment( lib, "WS2_ 32. lib () // 手机在行动区内的链接 )
Intmain () // 初始主机函数
{
WSADATatadata;//WSADATA 结构物体定义
WORDw = MakeWORD (2,0);/定义的Verion number
::WSAStartup(w,&data);//初始化套接字库
SOCKETS/ 连接控管定义
charsztext[10]={0};
s= 套接字( AF_ INET, SOCK_ STREAM, 0;// TCP套接字创建)
Sockaddr_ inaddr; // 套件地址地址结构定义
我不知道你在说什么,Ardr.sin_family=AF_INET;//地址结构初始化
addr.sin_port=htons(75);
addr.sin_addr.S_un.S_addr=inet_addr(“127.0.0.1”);
printf (“ 客户已启动 ” ); // 输出提示数据
::connect(s,(sockaddr*)&addr,sizeof(addr));
::recv(s,sztext,sizeof(sztext),0);
printf("%s ",sztext);
* 闭口室;// 套接字处理关闭
* WSACleanup();/Binder图书馆发行
如果符合条件( getchar () / ), 申请将被终止 。
{
返回0;//正常程序结束
}
else
{
* 睡眠(100);/睡眠方案
}
}
XTw.com.Cn系统网专业应用软件下载教程,免费windows10系统,win11,办公软件,OA办公系统,OA软件,办公自动化软件,开源系统,移动办公软件等信息,解决一体化的办公方案。
免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。内容仅供参考使用,不准确地方联系删除处理!
联系邮箱:773537036@qq.com
相关推荐
-
c++windows编程,windows网络编程目录
2024-07-13 10:36:17 -
windows高级编程技术,windows网络编程基础教程第2版
2024-07-13 10:15:14 -
windows网络编程书,windows网络编程基础教程第2版
2024-07-13 10:08:41 -
linux开发和windows开发区别,网络编程都是linux吗
2024-07-13 09:24:53 -
windows网络编程是什么,windows网络编程基础教程第2版
2024-07-13 07:57:45 -
linux和windows网络互通,linux和编程的区别
2024-07-13 07:35:24