Delphi 包:“必须进行以下更改...” 永远不会消失
在我的一个包(使用另存为和编辑从另一个包改编而来)上,我不断收到以下消息(这是在 Delphi 2007 中):
=======
在编译此包之前,必须进行以下更改。 选择“确定”应用这些更改并继续编译。
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 用于包的文件之一中的某个位置,但我没有看到在哪里。 有什么想法可以消除这种小小的不便,而不必从头开始重新创建包吗?
On one of my packages, which was adapted from another using Save-As and edit, I keep getting the following message (this is in Delphi 2007):
=======
The following changes must be made before this package can be compiled.
Choose OK to apply these changes and continue compiling.
Remove cmSizePanel_Reg.
Unit(s) cmSizePanel_Reg were found in required package cmExtRzPanel_D2007.
=======
I click OK, and it then proceeds to compile fine. This message, however, never goes away -- I get it every time I compile the package.
Here is the project source, using right-click, "View Source" to get there:
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" isn't in the project anymore, and doesn't show up in teh Project Manager panel. It would appear that it's "hiding" somewhere in one of the file Delphi uses for the package, but I'm not seeing where. Any ideas how to stomp out this little inconvenience without having to complete re-create the package from scratch?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试在 .dproj 的 XML 中查找该包。 .dproj 文件很容易被损坏并与 DPR 中的文件列表不同步,从而导致类似这样的奇怪问题。
Try looking through the XML of your .dproj for the package. .dproj files have a knack for getting corrupted and becoming out of sync with the file list in the DPR, leading to strange problems like this.
也许是过时的 .dcp 文件? 它们是对 .BPL 包的补充,并包含有关 BPL 的描述。
Stale .dcp files maybe? They are the compliment to .BPL packages and contain descriptions about the BPL.