c++ - BCB6后期制作

标签 c++ batch-file c++builder c++builder-6

我正在使用 Borland C++ Builder 版本 6,并想添加一些在执行项目构建后调用批处理文件的方法。 IDE 中没有直接支持执行此操作,但我了解到可以修改项目 makefile 以执行此类操作。在互联网上进行了大量挖掘和实验之后,我仍然无法做到这一点。

在这种情况下,批处理文件将简单地调用一个 exe 文件,但也可能需要将某些构建输出文件复制到系统目录等。

如果有任何不同,我在 Windows 7 x64 笔记本电脑上运行 BCB6。

问候 农夫乔

最佳答案

您可以运行 bpr2mak.exe 实用程序,传递您的项目 *.bpr

bpr2mak.exe Project.bpr

现在您有一个 Project.mak 文件并正在运行 make.exe:

make.exe -f Project.mak

您将构建项目。

不要将 make -f Project.mak 更改为 make Project.mak 否则 make 将尝试构建目标 Project.mak Makefile(如果愿意,您可以在 Makefile 中重命名 Project.mak 并简单地调用 make)。

在批处理文件中组装所有内容:

build.bat

@echo off
bpr2mak Project.bpr || goto :error
make -f Project.mak || goto :error
yourCommand_1.exe || goto :error
...
yourCommand_n.exe || goto :error
goto :EOF

:error
echo Failed - error #%errorlevel%.
pause
exit /b %errorlevel%

当然,您可以在 Makefile 的适当目标下添加其他命令,但这样您就必须在每次执行 bpr2mak 后手动编辑文件。

关于c++ - BCB6后期制作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20888223/

相关文章:

powershell - 如何使用批处理或 PowerShell 脚本遍历 CSV 文件?

delphi - 如何在 C++Builder 中构造这个 Delphi 类?

C++ Builder DBGrid 在 xlsx 文件中导出到 Excel

c++ - 来自指针的数组索引

C++ #if#elif#endif 似乎不起作用

c++ - 如何在托管 C++ 中使用手写的 getter/setter 定义属性?

c++ - 取消映射 boost 共享内存

c# - 如何从代码运行命令行命令

windows - 将时间戳添加到批处理输出的日志行

C++ Builder 派生的 TComboBox 默认有 Items