Qt 将生成的exe文件自动复制到其它目录下

QT pro中加入文件拷贝方法_qt pro复制粘贴-CSDN博客

目标:

例如:在release模式下,exe文件生成于:

"G:\test\build\release\shakeSensor.exe"

此时,我希望在生成该exe文件时,

"G:\test\build\test\"

此目录下也可生成该exe文件


可以在.pro文件中执行复制文件命令

相关代码:

cpp 复制代码
CONFIG(debug, debug|release) {
    ROUTDIR = $$PWD/../build/debug
    TARGET = shakeSensor_d
} else {
    ROUTDIR = $$PWD/../build/release
    TARGET = shakeSensor
    DEFINES+= QT_NO_DEBUG_OUTPUT

    TargetEXE = $$ROUTDIR
    TargetEXE = $$replace(TargetEXE, /, \\)

    OutputDir = $$PWD/../build/test
    OutputDir = $$replace(OutputDir, /, \\)
    QMAKE_POST_LINK += copy /Y $$TargetEXE $$OutputDir
}

DESTDIR = $$ROUTDIR

可以看到

ROUTDIR = $$PWD/../build/release

DESTDIR = $$ROUTDIR

ROUTDIR为exe的输出目录,对应"G:\test\build\release\shakeSensor.exe"

TargetEXE = $$ROUTDIR

TargetEXE = $$replace(TargetEXE, /, \\)

OutputDir = $$PWD/../build/test

OutputDir = $$replace(OutputDir, /, \\)

QMAKE_POST_LINK += copy /Y $$TargetEXE $$OutputDir

这部分代码用于复制原始exe到 "G:\test\build\test\"

TargetEXE存储原始exe的路径

OutputDir存储希望得到的新exe的路径

最后:

QMAKE_POST_LINK += copy /Y $$TargetEXE $$OutputDir

这句代码实现:把TargetEXE复制到OutputDir目录下

相关推荐
蒜丶20 分钟前
Windows 11 22H2 跳过联网激活
windows
摘星编程4 小时前
Elasticsearch(es)在Windows系统上的安装与部署(含Kibana)
windows·elasticsearch·kibana
YJlio4 小时前
PsPing 学习笔记(14.1):ICMP Ping 进阶——替代系统 ping 的正确姿势
windows·笔记·学习
郑泰科技5 小时前
mstsc 频繁断开是由svchost 策略引起的吗?
windows·笔记·负载均衡
开开心心就好5 小时前
OCR识别工具可加AI接口,快捷键截图翻译便捷
java·网络·windows·随机森林·电脑·excel·推荐算法
喂自己代言6 小时前
Windows 10 22H2 纯系统自带工具安全方案
windows·安全
天才程序YUAN11 小时前
Windows自动修改系统环境变量(PATH)中所有 D 盘路径的脚本
运维·windows
幺零九零零11 小时前
Windows + Docker + k6 + InfluxDB + Grafana
windows·docker·grafana
s412 小时前
Python安装在C盘后如何移到D盘
c语言·windows·python
芒鸽13 小时前
windows上使用Lycium 交叉编译移植鸿蒙三方库指南
windows·华为·harmonyos