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

相关推荐
alphaTao4 小时前
LeetCode 每日一题 2025/11/3-2025/11/9
windows·leetcode
习惯就好zz11 小时前
WSL2 安装Ubuntu卡在安装进度0%无响应问题解决
linux·windows·ubuntu·wsl·wsl2
仰望—星空14 小时前
MiniEngine学习笔记 : CommandListManager
c++·windows·笔记·学习·cg·direct3d
ue星空17 小时前
Windows内核函数使用
windows
业余幻想家18 小时前
Windows10/Windows11家庭版系统关闭自动更新
运维·windows
阿猿收手吧!19 小时前
windows本机vscode通过ssh免密登录远程linux服务器 && git push/pull 免密
服务器·windows·vscode
zxm851319 小时前
如何在Windows系统中加入程序自启动
windows
~~李木子~~20 小时前
Windows软件自动扫描与分类工具 - 技术文档
windows·分类·数据挖掘
-指短琴长-21 小时前
Qt的下载和安装【Windows】
开发语言·windows·qt
不懂音乐的欣赏者1 天前
Windows 下 ROS/ROS2 开发环境最优解:WSL 比直接安装、虚拟机、双系统更优雅!
linux·windows·ubuntu·ros·wsl·ros2·双系统