我有一组在D2009中一直在使用的自定义组件。我已经安装了Delphi XE,并且希望在升级项目时能够在两个IDE中使用这些组件。但是当我在XE中安装它们时,它们在D2009中不再真正可用。项目仍将编译,但组件不再显示在“工具选项板”中,并且它们也不会出现在表单设计器中。
无论我如何尝试卸载/重新安装等,我都无法在D2009中使用这些组件。我已经验证两个IDE的库路径中都有组件的目录。
我要做什么才能使组件在两个IDE中都能正常工作?
谢谢!
最佳答案
不同版本的Delphi在不同路径(“程序包输出目录”)中生成不同的程序包集(* .bpl文件)。设计包必须在运行时由IDE加载。现在,Windows搜索路径可能已发挥作用。当D2009想要加载软件包x.bpl时,它会解析为XE版本(不兼容),因为XE的软件包输出目录位于D2009之前的系统搜索路径中-如果先安装D2009之后再安装XE,则会发生这种情况(推荐)。
解决方案是始终对软件包使用库后缀。我建议您遵循Delphi自己的约定,对D2009软件包使用120,对XE软件包使用150。对于D2009,您的x.bpl变为x120.bpl,对于XE,您的x.bpl变为x150.bpl。
关于delphi - 在Delphi 2009和Delphi XE下安装相同组件无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6747574/