(windows网络编程设计)
更新时间:2023-10-07 15:03:01 阅读量: 综合文库 文档下载
Windows网络编程技术
课程设计报告
题目 模拟FTP功能
院 系: 数学与计算机学院
专业班级: 网络091 学 号: 0904681125 学生姓名: 吴 洋 指导教师: 胡 鸣
2012年 5月14日
实验目的:
为了使windows系统中的通用接口技术能够在网络环境中得
以应用,也就是使得分布在不同主机上的进程间的通信就像读写本地文件那样进行的话就需要构建新的复杂的进程间通信机制。另外,还由于进行网络操作的两个进程可能不在同一机器上,进程间进行通信首先要建立他们之间的联系;其次因为网络协议具有多样性,通信中如何建立一种通用机制支持多种协议是一种更大的挑战。关于网络间进程通信的工作就是要建立一种包含广泛网络语义的程序接口,这种接口可以为网络应用编程提供服务,作为进程通信界面成为开发网络应用软件的强有力工具。
实验要求:
理解windows环境支持的网络协议的特点; 理解套接字的基本功能的作用; 掌握基本的套接字函数编程方法;
功能简介:
此实例完成模拟的FTP功能。服务器端在端口2000处进行侦听,
并处于等待连接状态。客户端试图和服务器连接,一旦建立连接,就可以在客户端和服务器端进行文件传输(程序要求文件小于32KB)。客户端输入要传输的文件名,服务器接收到文件名后,将其写到相应
的位置。
设计思路:
客户 服务器 产生套接字 Socket() 产生套接字 Socket() 地址与套接字连接bind() 地址与套接字连接bind() 申请一个连接请求connect() 网上信息 进入监听状态 listen() 等待接受请求 accept()
网上信息
个人负责程序段:(初始化套接字和创建套接字)
DWORD StartSock() { WSADATA WSAData; //创建windows 扩展套接字 数据对象 if(WSAStartup(MAKEWORD(2,2),&WSAData)!=0) //初始化WINSOCK2.DLL版本连接裤 { printf(\ return(-1); } ServerAddr.sin_family=AF_INET; //设置默认地址协议 ServerAddr.sin_addr.s_addr=inet_addr(\设置服务器地址
ServerAddr.sin_port=htons(RECV_PORT); //设置接收端口 return(1); }
//创建套接字
DWORD CreateSocket() { sock=socket(AF_INET,SOCK_STREAM,0); //使用套接字函数创建一个套接字并绑定协议。 if(sock==SOCKET_ERROR) { printf(\ WSACleanup(); return(-1); } return(1); }
总程序代码:
1.服务器
#include\#include\#include\
#pragma comment(lib,\
#define RECV_PORT 2000 #define SEND_PORT 3000
#define MAX_FILESIZE 32*1024
SOCKET sock,sock1; sockaddr_in ServerAddr; sockaddr_in ClientAddr;
struct Filedata { char ffname[30]; char ffdata[MAX_FILESIZE]; int len; }DataPacket;
int Addrlen;
DWORD StartSock() { WSADATA WSAData; if(WSAStartup(MAKEWORD(2,2),&WSAData)!=0) { printf(\ return(-1); } return(1); }
DWORD CreateSocket() { sock=socket(AF_INET,SOCK_STREAM,0); if(sock==SOCKET_ERROR) { printf(\ WSACleanup(); return(-1); }
ServerAddr.sin_family=AF_INET;
ServerAddr.sin_addr.s_addr=htonl(INADDR_ANY); ServerAddr.sin_port=htons(RECV_PORT); if(bind(sock,(struct sockaddr*)&ServerAddr,sizeof(struct sockaddr_in))==SOCKET_ERROR) { printf(\ return(-1); } return(1); }
DWORD WriteFile(char* fname,char* fdata,int flen) { int i; FILE *fp; fp=fopen(fname,\ if(fp==NULL) { printf(\
正在阅读:
(windows网络编程设计)10-07
大学物理教程第二版-第1章答案 - 图文04-03
小豆芽作文200字02-04
走进文言文-六七年级-译文与题解1-10单元 - 图文03-15
六年级总复习几何图形练习题(史上最全)07-07
美国的水资源概况及水管理体制03-19
成功贵在坚持作文400字07-12
公立医院医疗质量管理考核标准(科室齐全) - 图文07-06
外贸跟单英文模拟复习题中译本10-30
携手同行,风雨如歌01-13
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 网络编程
- windows
- 设计
- 分级诊疗医院医务人员调查问卷
- C语言模拟试卷(10)
- 基于AT89C2051六位数字钟11
- 省教育厅省财政厅关于大力推进国家教育考试标准化考点建设工作的通知
- 医药商品学练习题
- 西安交通大学19年3月课程考试《流体力学》作业考核试题答案
- 搜索引擎营销调研报告
- FPGA芯片介绍
- 农村基层工作述职报告
- 护理干预对全髋关节置换术后并发症预防-文档
- 汽车4s店销售经理工作总结
- 最新-乡镇创先争优活动工作汇报材料 精品
- 小学数学课堂体验式教学实施探析
- 矿井各种图纸的管理及编制要求
- 上海市14校2017届高三下学期3月联考英语试题 Word版含解析
- 医院优秀人才选拔考核评分标准
- GC1120气相色谱仪再确认方案
- 教科版六年级下册科学期末试题-(含解析)
- 扫盲语文教案
- 工学交替心得体会范文