【QT5之QFtp模块】编译及使用

下载

传送门:https://github.com/qt/qtftp

或者
git clone https://github.com/qt/qtftp.git

下载ZIP,解压待用。

编辑

使用QtCreator打开qtftp.pro;

修改如下:

  1. qtftp.pro中,将第21行注释;
  2. src/qftp.pro中,将第4行核第5行,+,-号互换,生成.dll,如下图;
  3. src/qftp/Headers/qftp.h的第47行#include <QtFtp/qurlinfo.h>,改为#include <qurlinfo.h>;

编译

安装需用到perl,如未安装,会报错,安装perl:https://blog.csdn.net/MrHHHHHH/article/details/134233707?spm=1001.2014.3001.5502

构建或者重新构建。

配置

编译完成后,会生成以下目录

配置步骤:

1.lib目录下的Qt5Ftp.dll,Qt5Ftpd.dll文件复制到Qt5.12.1\5.12.1\msvc2017_64\bin目录下;

2.lib目录下的libQt5Ftp.a,libQt5Ftpd.a,Qt5Ftp.prl,Qt5Ftpd.prl文件复制到Qt5.12.1\5.12.1\msvc2017_64\lib目录下;

4.在Qt5.12.1\5.12.1\msvc2017_64\include\QtNetwork目录下,创建一个QFtp文件,里面写#include "qftp.h";然后将qt_qtftp-master\src\qftp里的qftp.h,qftp.cpp,qurlinfo.h,qurlinfo.cpp复制到Qt5.12.1\5.12.1\msvc2017_64\include\QtNetwork目录;

6.mkspecs\modules-inst目录下的qt_lib_ftp,qt_lib_ftp_private文件复制到Qt5.12.1\5.12.1\msvc2017_64\mkspecs\modules目录下。

通过上述六步,相当于给Qt新增了一个QtFtp的组件。

第一步和第二步准备该组件动态库;

第四步准备头文件;

第六步相当于定义QtFtp组件,配置IDE。

测试

  1. 在创建的Qt项目.pro文件中,添加 ftp
  2. 在需要的地方包含头文件,#include <QtFtp/QFtp>
  1. 构建,成功的话,就可以进行ftp操作了。

qtftp里面有个example示例,可以直接运行。

相关推荐
wifi___1 小时前
全局异常处理的原理
java·开发语言
平常心的技术小牛4 小时前
Qt-快速上手-QMenuBar
开发语言·qt
青 春 记 忆5 小时前
零基础入门Python11|Git实战:为任务管理器建立版本历史
开发语言·git·vscode·python·python3.11
余额瞒着我当琳6 小时前
C++--深拷贝三件套 + swap + 写时拷贝 + vector 扩容 + reserve
java·开发语言·c++
坐吃山猪7 小时前
WebClient内存配置解析
开发语言·springboot·webflux
jdksjw7 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Zach_菠萝侠7 小时前
【DeepSeek Harness 研究】进化方向4:安全加固 思考、设计与实现
开发语言·安全·deepseek
SL-staff8 小时前
技术实践:HR如何用JVS-Logic可视化编排实现考勤数据同步(含节点配置与异常处理)
开发语言·python·低代码·钉钉·可视化编排·jvs-logic·hr技术
SomeB1oody8 小时前
【RustyML入门】6.0. 数学工具
开发语言·后端·机器学习·rust·教程
进制树9 小时前
【飞控开发实战·⑲】ROS2无人机开发环境搭建:Jazzy安装、工作空间与hello_drone节点实战
开发语言·安全·无人机·课程设计