【问题标题】:Delphi unit gets ignored while compiling componentDelphi 单元在编译组件时被忽略
【发布时间】:2011-11-28 17:05:05
【问题描述】:

我正在尝试在 Delphi 2010 上编译 TBX_D2010。编译失败并出现 E2003 Undeclared identifier: 'TTBPopupPositionRec' in TBX.pas。

奇怪的是,TTBPopupPositionRec 是在 TB2Item 单元中声明的。更奇怪的是,我可以编辑 TB2Item.pas,甚至删除整个内容,但它仍然会因相同的错误而失败,忽略 TB2Item.pas 中引入的错误,就好像它会使用其他一些不同的 TB2Item 副本一样。但是,从 TBX.pas 的使用中删除 TB2Item 失败并出现不同的错误。

我为 TB2Item.* 找到了 dir /s,没有发现任何可疑之处,并删除了所有 TB2Item.dcu 文件。

这是怎么回事,为什么 Delphi 忽略了我在 TB2Item.pas 中的更改?

【问题讨论】:

  • 您是否安装了包含此单元的软件包?
  • 谢谢,这让我走上了正确的道路。我删除了另一个包的所有 .bpl 和 .dcp 文件,重新编译,重新安装了另一个包和新包,一切正常。

标签: delphi compiler-errors delphi-2010


【解决方案1】:

TBXToolbar 2000 的附加组件。

默认情况下,TB2Item.pas 不包含TTBPopupPositionRec,这是通过运行在TBX\Tools\TB2k Patch\ 目录中找到的差异来添加的。

未找到此类型表示补丁未正确应用。

另一个注意事项是,我注意到 Toolbar 2000 最后支持的版本是 Delphi 2009。 由于您使用 Delphi 2010 进行编译,因此您可能有一个或多个需要更新的编译器定义。

【讨论】:

  • 问题是我安装了未修补的 TB2K,然后将其删除以修补它,但没有删除 bpl 和 dcp 文件,删除不完整。
【解决方案2】:

当您在 IDE 中安装了一个包含无法定位的神秘单元的包时,通常会发生这种情况。

具体的解决方案取决于您的具体场景。

【讨论】:

    【解决方案3】:

    发布答案以便我可以关闭它:

    我删除了另一个包的所有 .bpl 和 .dcp 文件,重新编译,重新安装了另一个包和新包,一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-15
      • 2015-11-05
      • 1970-01-01
      • 2017-05-05
      • 2018-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多