【问题标题】:In Delphi 7, can I set up 'Debug' and 'Release' modes?在 Delphi 7 中,我可以设置“调试”和“发布”模式吗?
【发布时间】:2008-10-06 20:56:27
【问题描述】:

在大多数现代 IDE 中,您可以拥有 Debug 和 Release 构建配置,并且可以在它们之间快速切换。

在 Delphi 7 中,这似乎是不可能的。我必须去项目设置并手动切换优化和所有调试信息。

如果有一个插件或类似的插件可以为我处理这个,那就太好了。

有人知道吗?还有其他建议吗?

编辑:我无法升级到 Delphi 2007 或 2009,因为我们有一个必须转换的大型 Delphi 7 代码库。我同意这在理论上是最好的解决方案:P

【问题讨论】:

    标签: delphi ide delphi-7


    【解决方案1】:

    使用 Andreas Hausladen 的出色 DDevExtensions IDE 专家,您可以非常轻松地添加项目配置,类似于其他 IDE 提供的功能。只需确保从我提到的链接下载 1.6 版本,因为更高版本仅适用于 Delphi 2009。1.6 版本适用于 5 到 2007 之间的任何 Delphi 版本,包括在内。

    专家在项目菜单下增加了一个子菜单,以防一开始找不到。

    【讨论】:

      【解决方案2】:

      我不知道 Delphi 7 有任何构建配置插件,但是你可以模拟这个;

      只需在项目的每个单元中应用一个包含文件(无论如何这都是一件明智的事情),然后让它自行调整为一个定义,如下所示:

      --- ExampleIncludeFile.inc ---

      {$IFDEF DEBBUG}
      
      {$OPTIMIZATION OFF}
      {$RANGECHECKING ON}
      // etc
      
      {$ELSE}
      
      {$OPTIMIZATION ON}
      {$RANGECHECKING OFF}
      
      {$ENDIF}
      

      现在,如果您将 DEBUG 添加到 .dof 项目设置中的编译器定义中,您将获得一个 Debug-build,如果您删除它,您将获得一个发布版本。当然,其他设置也是完全可能的。

      Delphi 2005 确实在项目管理器中嵌入了构建配置(仅限发布和调试),Delphi 2009 对此添加了更多内容,包括“选项集”和自定义“配置”等漂亮的小东西(您甚至可以标记作为所有新项目的默认值)。看看吧,这真是一个很棒的产品!

      【讨论】:

      • 我将这些用作编译器标志(认为这是正确的术语),因此我的所有打印到文件逻辑都不包含在生产版本中 谢谢!
      • 它对我不起作用,我应该修改哪个 .dof 选项?符号 {$IFDEF DEBUG} 在 Delphi7 中已经定义了,但是我不能使用它,我应该手动定义它吗?
      • 似乎 DEBUG 符号不适用于旧版 Delphi,正如@Deltics 所说:stackoverflow.com/questions/147719/delphi-ifdebug-equivalent
      【解决方案3】:

      不直接在 Delphi 7 中,但您有选择:

      • 将所有更改(调试、优化等)的编译器指令包装在用户定义的编译器指令中,然后设置编译器指令以在调试和发布之间进行更改。
      • 此外,您可以使用FinalBuilder 或其他类似的构建工具来创建使用不同设置的构建。
      • Delphi 2005 添加了此功能。所以升级到 Delphi 2007 或 2009 并内置它。它们都是非常稳定的版本,具有许多新功能。

      【讨论】:

        【解决方案4】:

        此功能仅在 Delphi 2009 中添加。

        对于旧版本的 Delphi,您可以编写两份 .cfg 文件,一份带有调试选项,另一份带有发布选项,然后从批处理文件中编译调用 dcc32.exe 的程序。

        类似这样的:

        rem release.bat
        copy release.cfg myprog.cfg
        dcc32 -B myprog.dpr
        
        rem debug.bat
        copy debug.cfg myprog.cfg
        dcc32 -B myprog.dpr
        

        【讨论】:

        • 该功能是在 Delphi 2007 中添加的,并在 Delphi 2009 中进行了改进,以便构建配置“继承”公共基础配置。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多