我希望能够将一个 QC 中的修复程序应用到 Delphi 2009 的一个单元里(碰巧是 DBClient)。我知道需要将该单元复制到另一个目录中,并对其进行更改。那么,我该如何让 Delphi 编译该单元并使用它来代替已经存在的 DCU 呢?
我希望能够将一个 QC 中的修复程序应用到 Delphi 2009 的一个单元里(碰巧是 DBClient)。我知道需要将该单元复制到另一个目录中,并对其进行更改。那么,我该如何让 Delphi 编译该单元并使用它来代替已经存在的 DCU 呢?
如果不想修改原始的.Pas文件,那么可以通过将.Pas文件复制到应用程序文件夹中来实现。然后选择“构建项目”,它会在我的应用程序文件夹中创建新的dcu文件,该文件将代替原始文件。
我自己从未这样做过,但在 {RAD}\source\rtl
中有一些项目及批处理构建脚本。我相信这使得重新编译 RTL 函数变得容易。其他单元应该更容易重新编译。
如果您想要进行的更改是局部的,且这些单元并不被其他 RTL/VCL 单元广泛使用,则最简单的方法是将修改后的单元副本放在其标准位置之外。
另一个选择是运行时修补(也称为 detouring)。