QT5中如何使用QFtp类(这个类虽然没有被收录,但一直在更新)

由于QT5对QML的支持有很大的改进,所以打算将原来基于QT4的程序移植到QT5上,在移植用QFtp类写的程序时傻眼了!

Qt5 移除了 QFtp API,原因是其实现质量。QNetworkAccessManager 可以用来提供 ftp url 的上传下载操作。

由于原来的程序已经跑的很稳定了不想做修改,然后就去想其它办法,结果发现官方说这些 API 将由某一易于迁移的独立形式提供。

鄙人就去git看了看,结果发现这个源码一直在更新,已经更新到支持Qt5了,所以我就下载了一份源码,然后编译了一个支持QT5的QFtp。

废话不多说了,直接说我怎么做的:

1.去git下载代码

http://qt.gitorious.org/qt/qtftp

我下载的时候最后更新时间是2013-06-11

然后点击红色区域的那个连接

在新窗口中点击

下载源码

2. 编译

如图用QTCreator打开项目

然后编译编译最后会有几个类似警告的东西,直接点击忽略

3.完成后会在构建目录lib目录下面生成两个编译好的静态库

4.编译动态库

进入masterqt-qtftpsrcqftp目录

修改qftp.pro文件

将原来的两句CONFIG修改为:

       CONFIG -= static

       CONFIG += shared

然后编译编译完成后同样会在构建目录lib目录下生给予成我们需要的动态库文件

5.部署编译好的库

5.1将动态库(.dll文件)拷贝至C:QtQt5.1.05.1.0mingw48_32in目录下

5.2将静态库(.a文件)拷贝至C:QtQt5.1.05.1.0mingw48_32lib目录下

5.3将masterqt-qtftpsrcqftp目录下的两个头文件qftp.h和qurlinfo.h

拷贝至C:QtQt5.1.05.1.0mingw48_32includeQtNetwork目录下

5.4在该目录下创建一个文件QFtp注意没有扩展名

5.5用记事本打开QFtp文件,并且在其中写上#include”qftp.h”

6.使用编译好的库

需要连接哪个库就在pro文件中连接哪个库

例如:

    LIBS+="C:/Qt/Qt5.1.0/5.1.0/mingw48_32/bin/Qt5Ftp.dll"

7.然后你原来基于QFtp写的程序就可以成功编译了

http://2662597.blog.51cto.com/2652597/1279806

原文地址:https://www.cnblogs.com/findumars/p/5665349.html