- 3
- 0
- 约7.03万字
- 约 26页
- 2017-08-10 发布于河南
- 举报
实验四扫描可控计算机的客户端和服务器端编程设计
实验六 扫描可控计算机的客户端和服务器端编程设计
实验目的:
熟悉Visual C++ MFC 基于对话框的程序开发。包括编辑框中的文字的读取,按钮的响应函数,控件的可见和隐藏,列表框中内容的添加, 进程控件的使用等。
学会使用Winsock 编程的应用程序接口函数,包括 socket (), bind (), listen (), accept, recv(), send () 等的调用参数。注意,对于客户端而言,只有 (socket (), connect (), send (), recv () 四个函数)。 而服务器端的通信需要socket(), bind(), listen (), accept (), recv(), send() 六个函数。
学会使用文件类即CFile 的使用,重点是CFlie::Open() (文件打开), CFile::Close() (关闭文件), CFile::Read (读文件), CFile::Write (写文件), CFile::SeekToEnd(文件指针移至文件末尾,以方便从末尾添加内容. 等函数
引入目录树类(包含两个文件, dirtreectrl.cpp 和 dirtreectrl.h),以帮助寻找发送文件所在的文件夹,和接收文件所在的文件夹。
在文件发送端引入进程条控件,帮助监控文件传输的进程。
为了避免界面在运行服务器和客户端过程中的响应迟钝问题,我们在本程序中使用了多线程编程(牵涉到函数AfxBeginThread (fun, para). 这里的 fun 是新线程运行的函数的名称,而para 是函数 fun 的 输入参数。即新线程的函数调用方式为 fun (para). 在函数运行完毕后,线程自动退出。如果你需要让此新线程一直运行的话,在fun 函数中使用无限循环如 while (1){…….}, 或 for (;;){…..}.
本实验包括两个项目,一个是文件发送端即客户端(起名: MyFileSender,另一个 是文件接受端即服务器端 (起名,MyFileReceiver).
第一部分:文件发送端创建
启动 Visual C++。
点击菜单左上方的文件-〉新建-〉工程
选择MFC AppWizard[exe], 工程名称为MyFileSender,选择存储路径, 如下图,点击“确定”按钮
图1
3.选择基本对话框,在点击“下一步”
图2
4.在您希望包含WOSA支持吗?下选中“Windows Sockets[W]”,按“完成”按钮。你获得了一个工程框架。
图3
对话框中添加控件。
1.首先我们添加的控件是一个静态文本框。选择工具箱中的静态文本控件(标注为Aa),然后再在对话框工作区按下鼠标左键并向右下移动,当你放开鼠标后,一个静态文本框就产生了,如图4 ,在此控件上右击鼠标,在弹出菜单中选择“属性“,点击属性,出现如1.5 的对话框。你需要做的就是把”标题“右边白框中的文字改为你要写的文字,这时,你可以看到对话框中的文字已被改写了。
图4
图5
添加如图5这样的 三个 静态文本框,把“确定”按钮删除(使用“Delete”键),并把“撤销”按钮名字改为“关闭”(因为我们不对这些文本框进行操作,所以它们的ID不需要特别设置 )。
在“接收端主机地址”的右边添加一个文本编辑框(标志位ab│),并把它的ID 改为 IDC_IP, 如6
图6
在“接收端TCP端口号“右边添加一个文本编辑框,并把它的ID 改为 IDC_PORT , 如图7 所示。
图7
在“选择所需发送的文件”下面添加一个新的树状控件(),并把它的名字改为IDC_TREE,
用于引导你寻找到你要发送的文件。如下图
图8
在可控计算机列表下方创建一个新的静态文本控件,IDC_TEXT_PROGRESS,如下图4.9
图9
在静态文本控件“发送进程”的下方添加一个进程控件()
在对话框中添加一个如下所示的按钮,其ID为 IDC_PROGRESS
图10
在对话框中“接收端TCP”下方添加一个按钮(),ID为IDC_SEND, 标题为“发送选定文件”。
图11
最后的对话框设计视图应该如下图:
图12
现在,我们要添加代码,以处理对上述控件的响应。
首先把两个文件(DirTreeCtrl.h 和DirTreeCtrl.cpp)复制到程序所在的目录(也就是?MyFileSender.dsw 所在的目录)然后,双击“FileView”,在“MyFileSender files”处右击鼠标,在弹出菜单中选择“添加文件到工程”,选择DirTreeCtrl.h 和DirTreeCtrl.cpp,确定。这时,此两个文件已经进入了工程。
图13
文件视图中(FileView),点开Hea
您可能关注的文档
- 七年级信息技术课件(青岛地区使用)第一单元 第4课 信息道德与信息素养.ppt
- 东风一中微机原理及应用结业试题.doc
- 东西文化视野中的中国国家战略能力塑造.doc
- 《涉税通2009·企业版》用户操作手册.doc
- 中国律师:当前的形势和我们的任务(吕良彪).doc
- 中国建设银行利得盈2012年第48期人民币债券型保本理财.doc
- 中国时尚体闲女装行业市场调查及投资商机分析报告(2013-2018).doc
- 中国硫磺产业竞争格局与投资前景研究报告.doc
- 上机01 安装MySQL.doc
- 中国羊肉市场竞争格局及投资商机分析报告(2013-2018).doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 渣打银行(香港)有限公司.PDF VIP
- 2024年吉林高职高专院校单招统一考试《语文》试卷及参考答案.pdf VIP
- JSG202515机器人系统集成应用技术样题-学生组.docx VIP
- 棋盘博弈采购法战略体系.ppt VIP
- 节后复产复工安全知识考试试卷及答案.docx
原创力文档

文档评论(0)