如何用我自己的 Vcl.Styles.pas Delphi 单元替换原来的单元?

How to replace an original Vcl.Styles.pas Delphi unit with my own?

我想修复 Delphi XE7 VCL 源代码中的一些错误。 最简单的方法是我可以简单地编辑原始文件,重新编译并使用它(用新的 DCU 替换原始的 DCU)。

但是,我得到:

Unit %s was compiled with a different version of %s.

这样可以"patch" Delphi吗?不重新编译整个 VCL?

当然,但是(如果您在 Delphi 单元的接口部分进行修改),您还必须重新编译使用该修改文件的其他 VCL 单元 - 您需要确保这些单元是在搜索路径上,以便编译器可以看到并重建它们。