C++builder 使用古老VCL组件的推荐方法是什么? 我是一个有经验的程序员,但对于C++ Builder来说是全新的,所以这里有几个新手问题:
我目前正在刷新使用BCB5编译的旧代码库。我的目标是最终使用XE版本,但是因为有太多的工作(巨大的代码库),我在BCB6站做了第一站(主要是因为我可以继续使用相同的STL版本和_use_OLD_RW_STL preprocessor define) 我有大多数使用的第三方VCL组件的源代码,除了2,我只有foo.bpi/foo.bpl耦合+头。直接后果是,这些仍然需要vcl50.bpl来链接/运行C++builder 使用古老VCL组件的推荐方法是什么? 我是一个有经验的程序员,但对于C++ Builder来说是全新的,所以这里有几个新手问题:,c++builder,vcl,C++builder,Vcl,我目前正在刷新使用BCB5编译的旧代码库。我的目标是最终使用XE版本,但是因为有太多的工作(巨大的代码库),我在BCB6站做了第一站(主要是因为我可以继续使用相同的STL版本和_use_OLD_RW_STL preprocessor define) 我有大多数使用的第三方VCL组件的源代码,除了2,我只有foo.bpi/foo.bpl耦合+头。直接后果是,这些仍然需要vcl50.bpl来链接/运行 有没有办法拆解/重新组装foo.bpl文件,以便它可以链接/运行更新的VCL库 另一方面,在最终产
谢谢,VCL软件包是特定于版本的。不能在XE项目中使用BCB5包。您必须获得这些组件的XE特定版本。?我会设法为这些部件找到最新的替代品。这些是什么类型的组件?它们是定制组件,公司似乎已经丢失了它们的来源(或者承包商可能“忘记”提供它们,我真的不知道,历史当然也丢失了)。重点是我只能使用二进制形式。回答我自己:2。似乎不成问题,在尝试加载包时可能会触发某种运行时机制,该机制会引发一个异常,抱怨两个包中都实现了一个单元(AppEvnts)。谢谢您的回答。你能解释一下导致这种限制的技术细节吗?因为我无法获得更新的版本,所以我需要绝对确保在放弃之前什么都做不了。@cdelacroix:Remy是对的,什么都做不了。对象的内部格式可以在版本之间更改,例如,RTL详细信息也可以更改。升级到XE时,您会发现
TObject
s的大小不同,String
s的大小不同,等等。。。您将无法将BPL安装到IDE中。正如Remy所说,您确实需要源代码来重新编译,或者找到替换组件。你可以用一两个屏幕截图发布关于组件的信息,并在这里寻找替代方案!有很多,有人可能会给你指出一个或给你写一个替换的提示。