现有三种解决方法:使用mfc,
使用winInet API
使用winsocket
第一种和第二种比较好写,第三种最难。
我这次的客户端要求的比较高,希望能对传送速做到最大的优化,并能把多个ftp服务端的同一文件在同一时刻分段下载(断点续连的一种应用)不知道前面两种解决方法是否会遇到限制请有过这方面经验的高手指教。
使用winInet API
使用winsocket
第一种和第二种比较好写,第三种最难。
我这次的客户端要求的比较高,希望能对传送速做到最大的优化,并能把多个ftp服务端的同一文件在同一时刻分段下载(断点续连的一种应用)不知道前面两种解决方法是否会遇到限制请有过这方面经验的高手指教。
解决方案 »
- SQL 连接占线导致另一个hstmt
- 服务程序的启动问题?
- 如何重绘MFC标题栏
- 点击“开始”按钮,执行开始的动作,此时按钮变为“结束”,再点击此按钮,则执行结束的动作,怎么做?
- 菜鸟求助(在线等):为什么使用InvalidateRec指定的刷新区域不起作用?
- 如何唯一确定一个OLE控件
- 一个古老的数学问题(魔方阵问题)
- 进程间通讯用内存映射文件快还是socket快?(每次传递的数据量少但次数多)
- 在线候教:如何直接修改编辑控件中的CString变量?
- CreateCaret CreateCursor有什么用,该怎么用
- 还是那个工具栏问题,重新问一遍(加到100分)...
- ???ado访问sql2000,我要查询某一日期型字段,但只想查出大于某一时间(几点、分、秒,不要日期)的纪录该怎么写??
这三个方案的层次大致是这样:
WinInet -> mfc -> WinSock自然是越底层效率越高。按你的要求,用MFC做也没有问题,但ftp的话,协议比较
简单,从WinSockAPI做也不难。用WinInet,在断点续传方面可能有问题。还是考虑后两种吧。区别不大,mfc方便一点。BTW:vckbase上有不少ftp的示例代码
一:是使用CSocket,直接对服务端发送ftp请求。
二:是使用CFtpConnection 等类,这些类是对wininet函数进行封装,效率可想而知。
所以准确的说法应该是
CFtpConnection->wininet->Csocket->winsocket
其他同意_wMain的说法。