【Delphi】构建事件-Build Events(事半功倍)

目录

一、什么是构建事件(Build Events)?

二、构建事件类别

三、IDE中构建事件的设置

1. Commands: 输入希望命令 shell 在该构建阶段处理的构建命令。有两种输入命令的方法:

2. Events 事件:为构建阶段启用特定事件:

3. 为每个阶段输入命令并启用事件后,单击 "OK"。

四、Delphi开发环境IDE中预定义的宏变量列表(区分大小写)

 


使用Delphi或者RAD Studio的朋友,肯定会构建一个程序,所谓构建也就是最终生成一个EXE可执行文件(对于android或者ios不一定是EXE,但最终肯定是可运行文件)。会使用Delphi开发工具的,肯定会构建,但是不一定都知道构建事件,本文就详细谈谈构建事件。

一、什么是构建事件(Build Events)?

所谓构建事件就是在Delphi (RAD Studio是一样的)在生成可执行程序的时候,IDE允许我们执行自己的程序(对于开发者来说是自己,但是对于IDE来说是第三方),以便能够修改配置参数或者对生成的结果进行处理。

例如:我们可能想生成玩EXE程序后,我们需要将EXE程序拷贝到其他的目录;或者我们可能需要在进行构建前先将源程序备份到一个地方。如果我们不使用构建事件,那么我们只能手工一步一步来操作了,使用了构建事件,IDE就会自动在核实的时候调用我们需要执行的程序。

二、构建事件类别

构建事件有如下三种类型:

序号 类别 说明
1 Post-build events 在成功生成EXE文件之后触发的事件
2 Pre-build events 在生成EXE之前触发的事件
3 Pre-link events 在连接之前触发的事件(只对C++ Build有效)

三、IDE中构建事件的设置

 Project > Options > Build Events。在项目文件上右键先择项目选项中的Build Events

【Delphi】构建事件-Build Events(事半功倍)_第1张图片

对于有需要的构建阶段(构建前和构建后),可以输入想要的任何命令,并按如下方式启用事件:

1. Commands: 输入希望命令 shell 在该构建阶段处理的构建命令。有两种输入命令的方法:
  • 直接在 "构建事件 "对话框的 "命令 "输入框中键入命令。
  • 使用 "Build Event Commands "对话框中更大的编辑栏和有用的宏列表

【Delphi】构建事件-Build Events(事半功倍)_第2张图片

  1. 要打开 "Build Event Commands "对话框,请双击 "Commands "输入字段,或单击该字段,然后单击出现的省略号 [...] 。您可以在 "Build Event Commands"对话框的上半部分编辑命令字符串。
  2. 命令包括任何有效的 DOS 命令,例如: copy $(OutputPath) c:\Built\$(OutputName).
  3. 您可以每行输入一条命令(在每条命令后按 Return 键),也可以用"&"将命令分隔开来。
  4. 要在命令中添加预定义宏(如 OUTPUTDIR),请双击 "Build Event Commands"对话框下半部分宏列表中的宏名称。
2. Events 事件:为构建阶段启用特定事件:
  • Cancel on error - 如果出现错误,则取消构建。选择 "True "或 "False"
  • Execute when(仅支持 Post-build 事件)- 指定何时执行指定的命令。选择其中之一:
  1. Always (每次构建后都执行命令)
  2. Target is out of date (只有在项目发生更改时才会执行命令)
3. 为每个阶段输入命令并启用事件后,单击 "OK"。

四、Delphi开发环境IDE中预定义的宏变量列表(区分大小写)

序号 宏变量 说明
1 BDS The environment variable $(BDS)
2 Config The project's active configuration name
3 DEFINES The project's conditional defines.
4 DIR The environment variable $(BDS)
5 INCLUDEPATH The project's include path.
6 INPUTDIR The input file's directory
7 INPUTEXT The input file's extension
8 INPUTFILENAME The input file's name, with extension
9 INPUTNAME The input file's name, without extension
10 INPUTPATH The input file's full path
11 LOCALCOMMAND Local command entered by user in project manager.
12 OUTPUTDIR The output file's directory
13 OUTPUTEXT The output file's extension
14 OUTPUTFILENAME The output file's name, with extension
15 OUTPUTNAME The output file's name, without extension
16 OUTPUTPATH) The output file's full path
17 Path The environment variable $(Path)
18 Platform The project's active platform name
19 PROJECTDIR The project's directory
20 PROJECTEXT The project file's extension
21 PROJECTFILENAME The project file's name, with extension
22 PROJECTNAME The project's name
23 PROJECTPATH The project file's full path
24 SAVE Save the input file to disk before it is compiled.
25 SystemRoot The environment variable $(SystemRoot)
26 WINDIR The environment variable $(WINDIR)

例如:..\..\EXE\APP_BOX_ALL\$(Platform)\$(Config)中使用了宏变量。

 

你可能感兴趣的:(Delphi,Delphi,delphi,Macros,Delphi,构建事件,BuildEvents)