社区
网络编程
帖子详情
求一个WINSOCK实现FTP下载的代码
penguinhzf
2020-05-06 03:48:47
因为刚接触,对WINSOCK和FTP下载的协议都不懂,最好给个最简单的,感谢
FTP地址:192.168.1.10
账号:user
密码:user
...全文
168
2
打赏
收藏
求一个WINSOCK实现FTP下载的代码
因为刚接触,对WINSOCK和FTP下载的协议都不懂,最好给个最简单的,感谢 FTP地址:192.168.1.10 账号:user 密码:user
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
penguinhzf
2020-05-07
打赏
举报
回复
引用 1 楼 vansoft 的回复:
百度一大堆源码,你都懒得百度,估计也不会经常登录这里。
我相信这个论坛没有要求登录的频率吧?况且我是否经常登录,还会影响发问不成? 百度我查过,确实找不到我需要的内容和信息,就当我愚昧吧,所以想在此获取我想要的信息,难道这里要求先查百度?或者只能问百度里没有的东西??? 不想跟任何人对骂,但请根据帖子的内容回复,如果你有我需要的信息,希望能分享出来,我不胜感激,如果没有,也可以帮我顶贴,但说这些对这个帖子没有任何意思的话,你这等级就是这样回来的吗?
vansoft
2020-05-07
打赏
举报
回复
百度一大堆源码,你都懒得百度,估计也不会经常登录这里。
[免费]
WinSock
网络编程经络经典源
代码
.rar
《
WinSock
网络编程经络》的源码,用
WinSock
作为开发工具,以典型应用和标准协议为示例,介绍如何进行各种网络应用程序的设计,不仅
实现
客户端,也
实现
了服务器。用尽量简洁的
代码
揭示这些应用程序的本质,对
WinSock
的不同特性做了详细的分析。
代码
中
实现
的主要协议有:Echo、Ping、Traceroute、Daytime、Bootp、MSG、SNTP、Finger、HTTP、
FTP
等。了解它 们的设计原理、工作流程、通信机制能让你对
WinSock
网络程序设计有更深入的解读。学习、研究Internet中成熟的网络协议,是你技术上不断进步的基石,向上攀登的阶梯。
ftp
客户端
ftp
client纯C语言
winsock
实现
socket编程
ftp
客户端
ftp
client纯C语言
winsock
实现
socket编程 /* *本程序是2009年计算机网络课程设计作品。 *本程序参考rfc959标准。能准确与遵守此标准的服务器进行信息交互。 *本人不保留任何版权。 *本程序仅供学习研究测试使用。因使用本程序所有或部分
代码
所产生的任何后果,本人均不负任何法律责任。 *2009年7月13日 */ #include #include #include /*system()*/ #include #pragma comment(lib,"ws2_32.lib") #define ONUM 512 #define MNUM 512 #define FNUM 512 #define pt struct host { char ip[20]; unsigned short port; }; SOCKET ts; fd_set readfds; struct timeval timeval; struct host host; char renum[4]; char ordertemp[ONUM]; char order[ONUM]; char ordercp[ONUM]; char mess[MNUM]; char file[FNUM]; char setpath[FNUM]; char setpathf[FNUM]; int i,door,r,sys,seti;/*i for;door switch;r receive num;sys system state;set set state*/ char *p;/*strtok*/ int printmess(); void input(char ordertemp[]); int
ftp
(); int user(); int pass(); int command(); int list(); SOCKET createDataSocket(); int set(); int retr(); int stor(); int stor() { char filename[256]; SOCKET ds; int wi; int r2,r3,r4,bsnum,brnum; FILE *fp=NULL; set(); memset(filename,'\0',256); memset(order,'\0',ONUM); for(i=5;ibsnum); }/*while*/ printf("\n"); switch(printmess()) { case 425: case 426: case 451: case 551: case 552:closesocket(ds);fclose(fp);return -1; case 250: case 226:fclose(fp);return 0; default:return 0; } }/*stor*/ int retr() { char filename[256]; unsigned long fsize,wfsize; int r2,wi; SOCKET ds; FILE *fp=NULL; memset(filename,'\0',256); memset(order,'\0',ONUM); for(i=5;i<=200&&ordercp[i]!='\0';i++)order[i-5]=ordercp[i]; strcpy(filename,setpathf); strcat(filename,"\\\\"); strcat(filename,order); ds=createDataSocket(); if(ds==-1)return -1; memset(order,'\0',ONUM); strcpy(order,"type i\r\n");/*type i 二进制 type a ASCII*/ send(ts,order,strlen(order),0); switch(printmess()) { case 421:closesocket(ds);closesocket(ts);sys=0;return 421; case 530:closesocket(ds);sys=1;return -1; case 500: case 501: case 504: case 226:closesocket(ds);return -1; case 200:break; default:closesocket(ds);return -1; } strcat(ordercp,"\r\n"); send(ts,ordercp,strlen(ordercp),0); switch(printmess()) { case 421:closesocket(ds);closesocket(ts);sys=0;return 421; case 530:closesocket(ds);sys=1;return -1; case 450: case 500: case 501: case 550:closesocket(ds);return -1; case 125: case 150:break; default:closesocket(ds);return -1; } set(); system(setpath); fp=fopen(filename,"wb"); if(!fp){printf("create file fail!\n");closesocket(ds);printmess();return -1;} wi=1;fsize=0;wfsize=0; while(wi) { memset(file,'\0',FNUM); r=recv(ds,file,FNUM,0); if(r==SOCKET_ERROR) { printf("file recv error!\n"); closesocket(ds); fclose(fp); return -1; } fsize=fsize+r; if(r==0){wi=0;break;} printf("receive %8d bytes! have received %16d bytes!\r",r,fsize); r2=fwrite(file,sizeof(char),r,fp); fflush(fp);/*这里是关键*/ wfsize=wfsize+r2; printf("write %8d bytes!have written %20d bytes!\r",r2,wfsize); }/*while*/ printf("\n"); switch(printmess()) { case 425: case 426: case 451:closesocket(ds);fclose(fp);return -1; case 250: case 226: closesocket(ds); wi=1; while(wi)if(fclose(fp)==0)wi=0;return 0; default:return 0; } }/*retr()*/ 以下
代码
请
下载
本程序。VC++6.0编译通过
Socket编程系列之2:Windows-API网络编程入门实战
Socket编程系列初步计划:Socket编程系列之1: Linux-API 网络编程入门实战Socket编程系列之2: Windows-API 网络编程入门实战Socket编程系列之3: Muduo 网络编程入门实战Socket编程系列之4: Libevent 网络编程入门实战Socket编程系列之5: Libcurl 网络编程入门实战Socket编程系列之6: Boost-ASIO 网络编程入门实战----------------------------------------------------Socket编程系列之2:Windows-API网络编程入门实战l
Winsock
编程接口l UDP程序设计l TCP套接口函数l Web客户/服务器程序l 基于windows的IO复用机制l UDP广播和多播l 套接字选项l Windows套接字I/O模型l 原始套接字与ICMPl WinInet简介与案例实战
ftp
服务器端
代码
用
winsock
实现
的基于vc++的
ftp
服务器端程序,可以
实现
多线程,客户端可以同时访问服务器,
下载
资源。
多线程断点续传
下载
工具(支持HTTP&
FTP
)源
代码
本程序为在VC++6.0下编写的MFC文档应用程序,
实现
多线程
下载
功能,支持HTTP和
FTP
协议、断点续传,采用
WinSock
编程接口。(掩耳
下载
,非上传者原创)
网络编程
1,502
社区成员
18,437
社区内容
发帖
与我相关
我的任务
网络编程
VB 网络编程
复制链接
扫一扫
分享
社区描述
VB 网络编程
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章