c++实现文件传输之一:框架结构和界面实现在木马中文件管理的重要性,是无需质疑的,对于文件的管理,做到并不难,但做好却也不易在我们编写一个功能完整的“文件木马”其实现效果如图所示。为了文章的完整性,我们将分为数篇来介绍,本文主要介绍程序的整体框架和界面实现,在以后的文章中将以此框架为基础实现详细的功能。实现:枚举磁盘,枚举目录,获取文件信息上传文件,下载文件,执行文件,创建目录,删除目录等传输控制结构要实现客户端与服务端的通信,设计一个合理的传输控制结构,会使后面的工作轻松很多,为了使代码易读首先对要使用的命令进行预定义其各个命令定义如下#defineGetDriver0x01//磁盘信息#defineGetDirInfo0x02//目录信息#defineExecFile0x03//执行文件#defineGetFile0x04//下载文件#definePutFile0x05//上传文件#defineDelFile0x06//删除文件#defineDelDir0x07//删除目录#defineCreateDir0x08//创建目录#defineFileInfo0x09//文件信息#defineGetScreen0x10//查看屏幕在程序的网络通信中主要有操作命令,命令对像,和具体数据三部分,对于命令的传输定义如下结构typedefstruct{intID;//操作命令BYTElparam[BUF_LEN*2];//MAND;因为在程序中打交道最多的就是文件,对文件的详细属性定义如下结构typedefstruct {charFileName[MAX_PATH];//文件名称intFileLen;//文件长度charTime[50];//时间信息BOOLIsDir;//为目录否BOOLError;//错误信息HICONhIcon;//图标句柄}FILEINFO;,"命令数据",,并返回执行结果对整体结构的描述,我们用伪代码表述如下main(){/*初示化设置......*/while(true){if(client=accept(server,(sockaddr*)&clientaddr,&len))//循环接受连接{CreateThread(NULL,NULL,SLisen,(LPVOID)clien
计算机C++实现文件传输 来自淘豆网m.daumloan.com转载请标明出处.