实验四扫描可控计算机的客户端和服务器端编程设计摘要.docVIP

实验四扫描可控计算机的客户端和服务器端编程设计摘要.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验六 扫描可控计算机的客户端和服务器端编程设计 实验目的: 熟悉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),点开Head

文档评论(0)

xuefei111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档