Delphi Xe6 组件包问题

Posted

技术标签:

【中文标题】Delphi Xe6 组件包问题【英文标题】:Delphi Xe6 Component package issue 【发布时间】:2015-10-14 01:11:47 【问题描述】:

我有一个组件包已经运行了好几年。我目前正在尝试制作 32 位和 64 位版本。

我构建调试并发布 win32 版本没有错误。

我构建的win64版本没有错误。

但是当我尝试构建 win64 发行版时,我得到 "[dcc64 Fatal Error] FBCComponents.dpk(31): E2202 Required package 'rtl' not found"

有没有人知道发生了什么...

TIA 法利

【问题讨论】:

设计时没有 64 位版本的组件。 IDE 仅为 32 位,因此没有为组件安装 64 位组件。您无法在 32 位 IDE 中构建和安装 64 位设计时包。 谢谢,但这仍然不能解决 win64 运行时的问题。我还是不明白吗? 我对构建Win64运行时库没有任何问题(事实上,我今天只是移植了一个大型第三方库,因为供应商还没有这样做)。您的组件最后一次成功安装/编译的 Delphi 版本是什么? Ken 说的和我在回答中说的一样。你读过它吗?您需要将代码分成两个不同的包。 为什么要构建 64 位软件包?你真的发布了使用运行时包的应用程序吗?我不这样做,我将所有内容编译成可执行文件并完成它。无需包装。 (当然这也不能回答你的问题。) 【参考方案1】:

首先,您需要将它们分成两个单独的包 - runtimedesigntime。设计时包只负责安装到 IDE 中。

现在,设计时包直接与 IDE 一起工作。 Delphi IDE 只有 32 位。因此,设计时包也必须是 32 位的,而运行时包应该针对所需的任何平台进行编译。

【讨论】:

以上是关于Delphi Xe6 组件包问题的主要内容,如果未能解决你的问题,请参考以下文章

Delphi XE6 编译出的exe程序,体积很大怎么弄

为不同的Delphi版本编译Delphi组件包(bpl)

用于包/组件开发的 Delphi 环境设置

Delphi 在自己的包中安装组件

你如何找到一个 Delphi 组件来自的包?

如何在 Delphi 2010 ( UniSynEdit Package ) 中安装 Delphi 2009 组件包?