Delphi - 如何构建用于分发的软件包



使用Embarcadero RAD Studio XE7,我编写了一个包含VCL组件的运行时包(它是一个TGraphic后代)。现在我想分发这个组件,但只分发编译后的包,没有他的源代码。我不能将其包含在发行版中,因为我为一家想要出售它并保持对他的源代码的控制的公司编写了这个包,因此在这种情况下分发源代码不是替代方案。

组件包依赖于我也编写的其他 2 个包。所有这些包都是运行时,但注册了图形筛选器。安装包后,此筛选器允许我从开发计算机上的几个本机 VCL 组件(如 TImage)打开一种新类型的映像文件。此行为非常重要,我想将其保留在目标 IDE 上。

理想情况下,我希望我的软件包安装在XE和10.2柏林之间的所有RAD Studio平台上。但是,我最近尝试在我的开发计算机上编译我的软件包,并将其手动部署到另一台安装了RAD Studio XE4的计算机上。结果令人信服:

  • 尝试使用组件>安装包安装 .bpl 文件...失败,出现"找不到指定的模块"错误。使用依赖沃克工具打开 .bpl 文件时,我注意到缺少几个像 RTL210.bpl 这样的依赖项
  • 我还在某处读到只有设计时包可以这样安装,这是准确的吗?
  • 手动将我的一个软件包的所有文件(.bpl,.lib,.hpp,...)放在XE4通用目录中,我能够成功编译一个测试项目。但是我的包中的几个函数不可用(导致尝试使用它们时未解析外部函数)

虽然我过去在软件和软件包分发方面有一些经验,但我必须承认,我完全不知道如何构建这样的软件包进行部署。在我过去的所有场景中,我总是分发包项目和源代码,并让用户在自己的 IDE 上安装它们。

在过去的几天里,我搜索了有关这方面的信息,但一无所获。因此,如果有人可以解释如何实现这样的软件包,或者可以指出我描述该过程的文档或网站,或者最终给出可以完成这项工作的工具的名称,我将非常感谢他。

问候

如果不想分发源文件,则需要提供 .dcu 和 bpl 文件。正如Uwe所说,每个Delphi发行版都需要不同的软件包。

我过去所做的是创建一个安装程序来构建和注册软件包。您可以在此处找到完整的说明:

http://www.kouraklis.com/2016/10/build-and-install-packages-in-delphi-ide-using-innosetup/

我认为您可以修改脚本以跳过对 MSBuild 的调用。

希望这有帮助。

最新更新