【问题标题】:Delphi Package: "The following changes must be made..." never goes awayDelphi 包:“必须进行以下更改......”永远不会消失
【发布时间】:2009-06-26 21:04:38
【问题描述】:

在我使用另存为和编辑从另一个包改编而来的一个包上,我不断收到以下消息(这是在 Delphi 2007 中):

=======
在编译此包之前,必须进行以下更改。 选择 OK 以应用这些更改并继续编译。

  Remove cmSizePanel_Reg.  
  Unit(s) cmSizePanel_Reg were found in required package cmExtRzPanel_D2007.

=======

我点击确定,然后继续编译。然而,这条消息永远不会消失——我每次编译包时都会收到它。

这里是项目源代码,使用右键单击“查看源代码”即可到达:

package cmBaseFrames_D2007;

{$R *.res}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$DESCRIPTION 'CM BaseFrames - Base Frames and related panels (TcmBaseFrame, etc)'}
{$IMPLICITBUILD ON}

requires
  rtl,
  vcl,
  Rz30Ctls90,
  vclx,
  cmExtRzPanel_D2007;

contains
  cmBaseFrames_Reg in 'cmBaseFrames_Reg.pas',
  cmBaseFrameFrame in 'cmBaseFrameFrame.pas' {cmBaseFrame: TFrame},
  cmBaseSizeableFrameFrame in 'cmBaseSizeableFrameFrame.pas' {cmBaseSizeableFrame: TFrame};

end.

“cmSizePanel_Reg”不再出现在项目中,也不会出现在项目管理器面板中。看起来它“隐藏”在 Delphi 用于包的文件之一中的某个地方,但我没有看到在哪里。有什么想法可以消除这种小小的不便,而无需从头开始重新创建包?

【问题讨论】:

    标签: delphi ide packages custom-component


    【解决方案1】:

    尝试通过 .dproj 的 XML 查找包。 .dproj 文件具有损坏并与 DPR 中的文件列表不同步的诀窍,从而导致此类奇怪的问题。

    【讨论】:

    • 做到了! - 谢谢。最后还不得不手动删除 DCR 文件,但这让我走上了正轨。再次感谢。
    • 我现在遇到这个问题,删除 .dproj 没有帮助。
    【解决方案2】:

    可能是陈旧的 .dcp 文件?它们是对 .BPL 包的补充,并包含有关 BPL 的描述。

    【讨论】:

    • +1。这对我有用,一次,然后我不得不从设计时项目中实际删除一些对 .dcps 的引用。
    • dcp 的 iirc 可以包含包的弱打包单元,这使得它们在功能上与 .dcu 相同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-10
    • 1970-01-01
    • 2020-01-23
    • 1970-01-01
    • 2021-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多