【问题标题】:C++ Builder XE2 - is it possible to debug vcl data library?C++ Builder XE2 - 是否可以调试 vcl 数据库?
【发布时间】:2012-07-11 12:40:17
【问题描述】:

我在使用 SQL 数据库时使用方法 TParams::ParamByName。该方法的源代码位于目录 c:\Program Files\Embarcadero\RAD Studio\9.0\source\data 文件 Data.DB.pas 中。是否可以调试本单元的源代码?目前我只能使用汇编器窗口调试数据单元(不查看在高级编程语言中定义的命令)。 VCL 是静态链接到程序的。

【问题讨论】:

    标签: debugging static-libraries vcl built-in c++builder-xe2


    【解决方案1】:

    进入项目选项。

    Delphi Compiler > Compiling下启用Use debug .dcus

    C++ Linker下禁用Link with Dynamic RTL

    Packages > Runtime Packages下禁用Link with Runtime Packages

    然后您就可以进入 VCL/RTL 源代码。

    【讨论】:

    • 不起作用。我可以在汇编代码中看到方法的名称,但是当打开 *.pas 源代码时,没有蓝点,所以我无法设置断点。
    • 可能是因为我们没有购买 RAD Studio only C++ Builder XE2?
    • 没有。无论您是否安装了 Delphi,这都应该可以正常工作。如果这仍然不能正常工作,那么您可能没有正确配置搜索路径,因此 IDE 可以找到 VCL 源代码和调试库二进制文件。
    • 现在我发现它唯一的问题是 XE2 IDE。 C++ Builder XE 功能正常。
    • 但问题只存在于从 BCB6 转换为 XE2 的旧项目上。在XE2中新建项目,调试VCL没有任何困难。
    【解决方案2】:

    进入项目选项。

    如果您的项目仅包含 C++ 和 C 文件,则无需在 Delphi Compiler > Compiling 下设置 Use debug .dcus(请参阅 Remy Lebeau 的回答)。

    C++ Linker 下禁用Link with Dynamic RTL

    Packages > Runtime Packages 下禁用Link with Runtime Packages

    如果您的项目(我们将其命名为 Project1)是从旧版本的开发环境(C++ Builder XE 和更早版本)升级的,请从所有节点(所有配置,所有配置 - 32-位 Windows 平台,调试配置,...),但特定于此特定项目的路径除外。打开 C++ Builder XE2 的第二个实例。点击File -> New -> VCL Forms Application。在项目管理器中右键单击项目并选择Options。导航到Directories & Conditionals -> Library path。将所有节点的路径复制到 Project1 中的对应节点。

    【讨论】:

      猜你喜欢
      • 2012-12-02
      • 1970-01-01
      • 2012-10-13
      • 2011-09-05
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      • 1970-01-01
      • 2015-04-03
      相关资源
      最近更新 更多