4

是否可以仅为 Delphi 2007 中的特定构建配置添加构建事件?

我使用 2007 年,但也会对您在 2009 年可以做什么感兴趣。

干杯山姆

4

4 回答 4

4

是的!

因为您可以在每个构建配置中有单独的定义。您可以检查项目定义的条件构建处理。

我使用类似的东西:

echo $(DEFINES) | find "RELEASE"> nul
if not errorlevel 1 goto
release

echo $(DEFINES) | find "DEBUG" > nul
if not errorlevel 1 goto debug

goto end

:release
echo Processing RELEASE Build:
...
goto end

:debug
echo Processing DEBUG Build:
..
goto end

:end
于 2010-02-26T11:50:45.303 回答
3

不。

您可以在 Delphi 2009 中为每个构建配置设置(资源)编译器设置。但这不适用于其他设置。

您可以伪造它,但这需要一些时间:

  1. 在预构建中,删除 conf*.dcu 文件。
  2. 为调试配置定义 DEBUG。
  3. 将以下内容添加到项目文件中:

代码:

uses
  ..
{$IFDEF DEBUG}
  confDebug,
{$ELSE}
  confRelease,
{$ENDIF}
  ..
  1. 现在让构建后步骤检查是否存在 confDebug.dcu 或 confRelease.dcu 以查找使用了哪个构建配置。

这有点麻烦,但你可以做你想做的。

于 2009-03-29T19:56:44.053 回答
2

试试这个:

if $(Config) == Release do_something

在这里你可以找到一些额外的信息

于 2014-06-14T21:13:15.767 回答
0

使用 XE 时,如果您有兴趣,我将其范围缩小到更简单的范围:

goto $(Config)

:Release
compil32 /cc f:\dev\MyProject\Installer\MyProject.iss"
etc.

:Debug

只有当我将构建配置设置为发布时,它才会构建我的安装程序。如果你想变得更高级,你可以打电话给 Jenkins,让它接管预发布任务。在 Delphi 10.x 中,您不再需要这个技巧了。

于 2018-07-31T22:19:29.220 回答