Wit*_*292 4 ide delphi indy indy-8
我有一份Delphi 6和一个使用Indy TIdMessage
组件的简单电子邮件程序.我想删除IdMessage.pas
然后重新编译应用程序的第464-465行.我很难找到清晰的文档,所以我尝试了这些步骤来修改组件:
\delphi6\source\indy\indy.dpk
在IDE中打开IdMessage.pas
在包窗口IdMessage.pas
并保存文件但后来我得到了一个错误\bpl\indy60.bpl can't be loaded because \bin\indy60.bpl is already loaded
.所以我在"组件"菜单中尝试了"安装包...",但只在\bpl\dclindy60.bpl
那里找到了.所以我删除了那个包,并且:
\delphi6\source\indy\dclindy.dpk
在IDE中打开IDE确认TIdMessage
已安装所有组件(包括),但电子邮件程序仍然表现为原始未修改组件仍在使用中.
我究竟做错了什么?
如果您使用的是运行时包,那么您需要确保程序找到新的包文件.bpl.
但您可能没有使用运行时包.因此,运行时程序使用位于Delphi安装文件夹中的.dcu文件静态链接Indy代码.特别是在这种情况下<ProgramFiles>\Borland\Delphi6\Lib\IdMessage.dcu
.您需要确保链接新代码.最简单的方法是将修改后的文件添加到项目中.这意味着修改后的版本会被编译并链接到您的程序中.
由于您的修改位于设备的实施部分,因此您需要做的就是这些.如果修改在接口部分,您将遇到"单元X使用不同版本的单元Y编译"错误.您可以通过将其余的Indy源添加到项目中来解决这个问题.
需要强调的一点是,您永远不应该修改Delphi安装文件夹下的文件.如果要对这些组件进行修改,请复制这些文件并对这些副本进行修改.
归档时间: |
|
查看次数: |
503 次 |
最近记录: |