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 小时前
windows-ps1脚本-获取网线直连下文件路径中的文件名
windows·脚本
专注VB编程开发20年4 小时前
C#内存加载dll和EXE是不是差不多,主要是EXE有入口点
数据库·windows·microsoft·c#
地狱为王4 小时前
Windows下编译coturn
windows
YCOSA20255 小时前
雨晨 Win7SP1 企业版 IE11 VCDX x64 极速 7601.28064
windows
吕了了5 小时前
给U盘一个PE to Go:将微PE系统直接释放到U盘
运维·windows·电脑·系统
总有刁民想爱朕ha6 小时前
MySQL 8 Windows日常维护教程(安装、备份、还原、重置密码等)
windows·mysql
世转神风-7 小时前
ps1脚本-运行报错-并带有乱码
windows·脚本
青w韵7 小时前
Claude 高级工具使用解析:从上下文优化到程序化调用的工程实践
数据库·windows
淼淼7637 小时前
Qt拖动工具栏控件到图页中均匀展示
开发语言·c++·windows·qt
武藤一雄8 小时前
[.NET] 中 System.Collections.Generic命名空间详解
windows·微软·c#·asp.net·.net·.netcore