gpt4 book ai didi

delphi - 在 dclusr.dpk 中安装组件会破坏其他组件

转载 作者:行者123 更新时间:2023-12-03 15:58:45 27 4
gpt4 key购买 nike

首先我安装了RX library 2.75和其他一些。
然后我尝试安装源自 TRxLookupEdit 的自定义(不是我的)组件 TMyLookupEdit
我通过主菜单 -> 组件 -> 安装组件...并选择组件的.pas来完成此操作文件

当 Delphi 尝试重建 dclusr.dpk 时,我得到类似这样的信息(不记得了,要重现它,除了重新安装 Delphi,我没有找到其他方法):

Can't load package c:\program files\borland\delphi6\Projects\Bpl\dclrx6.bpl.
Cannot load package 'RxCtl6.' It contains unit 'FileUtil,'which is also contained in package 'RxCtl660'

然后 IDE 告诉我MyLookupEdit 组件已安装并且大约 100 个其他组件安装。所有 RX 组件均从调色板中消失

我确信我只安装了 RxCtl6 而不是 RxCtl660。但它们现在都在C:\Program Files\Borland\Delphi6\Projects\Bpl中。我唯一的线索是 dclusr.dpk 文件中的#define(见下文)

如何让 RX 和该组件一起工作?

<小时/>

这是我的 dclusr.dpk(大多数 #define 被省略):

{$LIBSUFFIX '60'}

requires
rtl,
vcl,
designide,
vcldb,
dbrtl,
vclx,
VclSmp,
RxCtl6,
RxDB6;

contains
RegGrid in '..\..\..\..\_work\Delphi\__Install\__Components\No-package components\RegGrid\RegGrid.pas',
Tabenter in '..\..\..\..\_work\Delphi\__Install\__Components\No-package components\TABENTER.PAS',
MyLE in '..\..\..\..\_work\Delphi\__Install\__Components\No-package components\MyLookupEdit\MyLE.pas';

end.
<小时/>

解决方案

  1. 从 dclusr.dpk 中删除 {$LIBSUFFIX '60'}
  2. 删除 dclusr60.bpl 文件
  3. 重建 dclusr.dpk

非常感谢 Serg 的指导!

最佳答案

I'm sure I've installed only RxCtl6 and not RxCtl660. But they are both in C:\Program Files\Borland\Delphi6\Projects\Bpl

RxCtl6.bpl 和 RxCtl660.bpl 的共存意味着您的 RxCtl6 包以某种方式在使用或不使用 {$LIBSUFFIX '60'} 指令的情况下进行编译。

我在安装更新的 TeeChart 组件包后遇到了类似的问题,导致 TeeChart 依赖包变得无法工作。作为快速解决方案,您可以尝试在“必需”部分中将 RxCtl6 和 RxDB6 替换为 RxCtl660 和 RxDB660。另请检查 RX *.dpk 源中的 {$LIBSUFFIX '60'} 指令 - 实际问题与 {$LIBSUFFIX '60'} 指令有关。

如果某些软件包消失,请不要重新安装 Delphi - Delphi 将有关已安装软件包的信息保留在注册表中,因此

  • 尝试修复 IDE 中的问题;如果没有帮助
  • 尝试修复注册表中的问题

关于delphi - 在 dclusr.dpk 中安装组件会破坏其他组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4322553/

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