gpt4 book ai didi

delphi - 当 dcu 存在时,Delphi 在编译时是否需要 dfm?

转载 作者:行者123 更新时间:2023-12-03 15:26:41 34 4
gpt4 key购买 nike

我一直认为 dcu 文件就是编译时所需的全部内容。至少,不需要源文件(pas 和 dfm)。

我有以下情况:

  • 一个 Delphi 应用程序,包含两个单元,每个单元包含一个表单:
    • UMain 包含表单 TMain
    • USubForm 包含表单 TSubForm
  • USubForm 位于 UMain 的 use 子句中
  • 编译此程序后,我删除了 USubForm.pas 和 USubForm.dfm,并用编译后的 USubForm.dcu 替换它们。
  • 编译现在会导致错误:DCC:错误:E1026 未找到文件:'USubForm.dfm'
  • 请注意,如果我仅删除 USubForm.pas(但将 USubForm.dfm 文件保留在 USubForm.dcu 旁边),则编译可以正常工作。

我不明白。我认为 dcu 文件就是我所需要的(即它是 pas + dfm 文件的编译版本)。

我正在使用 Delphi XE2(我们应该很快就会升级,但我认为这与我的问题无关)。

附注一些背景:我正在尝试为我们内部的 Delphi 库和应用程序设置一个持续集成系统。我希望能够在不需要库源文件的情况下编译应用程序。

最佳答案

是的,链接项目时需要 DFM 文件。它被视为资源文件。我记得,编译时不需要

关于delphi - 当 dcu 存在时,Delphi 在编译时是否需要 dfm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36864529/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com