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目录下

相关推荐
路由侠内网穿透2 天前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
研华嵌入式2 天前
如何在高通跃龙QCS6490 Arm架构上使用Windows 11 IoT企业版?
arm开发·windows·嵌入式硬件
带娃的IT创业者2 天前
Windows 平台上基于 MCP 构建“文心一言+彩云天气”服务实战
人工智能·windows·文心一言·mcp
csdn_aspnet2 天前
Windows Node.js 安装及环境配置详细教程
windows·node.js
摇滚侠2 天前
java语言中,list<String>转成字符串,逗号分割;List<Integer>转字符串,逗号分割
java·windows·list
Source.Liu2 天前
【Pywinauto库】12.2 pywinauto.element_info 后端内部实施模块
windows·python·自动化
Source.Liu2 天前
【Pywinauto库】12.1 pywinauto.backend 后端内部实施模块
开发语言·windows·python·自动化
私人珍藏库2 天前
[Windows] FileOptimizer v17.1.0_一款文件批量压缩工具
windows·批量压缩
掘根2 天前
【CMake】List
windows·microsoft·list
TToolss3 天前
删除文件夹里的网盘图标
windows