Delphi Rad Studio - 我可以在每次编译/构建时停止重新编译组件吗

问题描述 投票:0回答:3

这可能与库和其他路径有关,但每次我在 DRS 中构建/编译使用 TMS 控件等购买组件的软件时,TMS 控件也会不断重新编译。

我该如何阻止它?

delphi components
3个回答
4
投票

您是否可以在单元目录(库路径)中包含组件的源目录和单元目录

尝试仅将预编译单元包含在unitdir(库路径)中,并将组件的源仅保留在浏览路径中。 (供调试器使用)


3
投票

如果您使用包进行构建,您可以将 TMS 包构建控制设置从“根据需要重建”更改为“显式重建”。

如果 TMS 包的源发生更改,您的构建将停止: 必须重新编译从不构建包“NameOfChangedPackage”。

如果您的构建有或没有软件包,另一个可行的选择是使用 DCU 进行构建。 首先,您需要从库路径和项目路径中删除 TMS 源目录。 然后您需要打开 TMS 包,确保它的项目选项知道它的源代码。 然后还将 DCU 或单元输出目录设置为新目录。 这样您就可以重建 TMS 并发现新目录将填充 DCU。 将 DCU 文件夹添加到您的库路径中,构建项目时不会重新编译 TMS。

注意:如果您使用调试信息以这种方式编译 TMS(或任何其他包),您可能会发现自己处于 TMS 源代码或 CPU 查看器中。 如果您想避开 CPU 查看器并进入 TMS 源,则需要设置浏览路径。 如果您想避免一起单步进入 TMS 源,请确保它没有使用调试信息进行编译。


0
投票

其中一个(或多个)应该可以帮助您:

  1. 不要让 Delphi 找到包(TMS、LightSaber、Jedi 等)的单元 (PAS) 文件。使用库路径来查找 DCU。
  2. 将您的包设置为“从不构建”而不是“根据需要构建”
  3. 转到项目 -> 依赖项。检查该包裹是否存在。
© www.soinside.com 2019 - 2024. All rights reserved.