文档详情

《Windows网络程序设计》实验指导书.doc

发布:2021-10-31约9.51千字共16页下载文档
文本预览下载声明
《Windows网络程序设计》课程实验指导书 课程名称:Windows网络程序设计 实验学时: 10 适用专业:数字媒体技术 课程类别: 必修 一、实验教学任务与目的: 《Windows网络程序设计》课程是数字媒体技术专业的必修课。实验的目的是为了配合课堂教学,进一步强化使用Winsock的网络程序设计技术。具体内容主要包含TCP/IP的实现技术、网络程序设计基本知识、TCP编程、UDP编程、网络综合程序设计、Winsock常用函数介绍及其应用等内容。 二、实验项目内容、基本要求与学时分配 序号 实验项目名称 实验学时 实验类别 实验类型 实验要求 实验内容提要 1 tcp/ip网络程序框架建立 2 专业基础 验证 必做 设计基于tcp的函数,使用winsock api调用 2 基于udp的网络程序设计 2 专业基础 综合 必做 设计基于udp的函数,使用winsock api调用 3 利用MFC进行Winsock编程 4 专业基础 综合 必做 使用MFC框架,构造网络聊天器。 4 构建网络五子棋游戏 2 专业基础 综合 必做 使用Csocket类做一个五子棋游戏,能够进行网络游戏 注:1、实验类别:基础、专业基础、专业、其它。 2、实验类型:演示、验证、综合、设计研究、其它。 3、实验要求:必做、选做。 三、实验项目的目的及要求 实验一 Tcp/ip网络程序框架建立 (2学时) (一)实验目的和要求: 1.设计基于tcp的函数,逐步了解winsock api调用方法 2 掌握winsock网络程序的吉本框架 (二)实验设备及材料: 1.微机 2.安装Microsoft Visual C++ 6.0 (三)实验内容 1. 手工输入教科书P188 例子8.2.2服务器程序和8.2.3客户机程序,掌握CS模式TCP程序的基本方法。 在visual c++6.0平台下,file-new-projects-win32 console application.生成一个 project name为tcp_server的项目。再通过file-new-files生成一个C++的空文件。输入例子8.2.2的代码。编译通过后,链接会出现问题。在菜单project里面选择settings-link里面的object/library modules 添加 wsock32.lib。想想,为什么? 在visual studio 2005下面如何操作?自己尝试 2.创建Windows时间服务器程序,侦听1234端口,发送时间的字符形式,实现由RFC-867定义的daytime协议。 3.创建Windows时间客户端程序,向daytime服务器的1234端口,获取时间并显示。 4. 在时间网络客户/服务器模式基础上,进行改动,使得客户机和服务器能够进行消息发送。 将服务器中的代码从 while(1) { connectionFd = accept(serverFd, (struct sockaddr *)NULL, NULL); if(connectionFd =0) { currentTime = time(NULL); sprintf(timebuffer, %s, ctime(currentTime)); printf(已有%d个访问者\n,i++); send(connectionFd, timebuffer, strlen(timebuffer),0); // char *msg= hello, its a message from qian guiping; // sprintf(timebuffer, %s\n, msg); // send(connectionFd, timebuffer, strlen(timebuffer),0); closesocket(connectionFd); } } 改为如下代码,想想看,为什么这么改? while(1) { //操作系统利用第二个参数来返回新创建的套接字的地址结构; //操作系统利用第三个参数来返回新创建的套接字的地址结构的长度 connectionFd = accept(serverFd, (struct sockaddr *)NULL, NULL); while(connectionFd =0) { currentTime = time(NULL); sprintf(timebuffer, %s, ctime(currentTime)); printf(第%d次通话\n,i++); send(connectionF
显示全部
相似文档