我发现自己支持的软件不时无法在不同的PC上运行。通常它们是新的Win7安装。
错误消息是“此应用程序无法启动,因为找不到rtl90.bpl ...”
要解决我的问题,我支持PC支持将rtl90.bpl文件复制到用户system32目录,但是我想确保不再出现此错误。
我使用Google搜索并找到了以下链接rtl90.bpl problem
我的问题是: 已在此程序的“项目”选项下选择“使用运行时包构建”选项,并且似乎对遇到问题的用户没有任何影响。
我是否必须专门将缺少的rtl90.bpl文件添加到项目中?
请注意,我对delphi编程知之甚少。
答案 0 :(得分:4)
由于您在项目中标记了选项Build with runtime packages
,因此最终的exe将需要部署一些额外的bpl文件。要避免这种依赖关系,您必须取消选中该选项以构建项目。现在你的exe会更大但没有依赖。
答案 1 :(得分:3)
该包是包含VCL的运行时包。您可能还需要为RTL部署rtl90.bpl,可能还需要部署其他一些。通过启用运行时包,您承诺在可执行文件可以找到它们的位置部署这些包。
您有3个主要选项:
我认为选项1很差。依赖PATH变量和修改它的能力是脆弱的。选项2有效但与选项3相比似乎没有意义。当您选择2时,您可以部署更多文件和更大的文件,所以为什么选择它。
总之,我建议选项3.将所有RTL / VCL代码静态链接到可执行文件中。
在我看来,选项2获胜的唯一情况是,当您有多个相关的可执行文件全部部署到同一目录时。在这种情况下,共享RTL / VCL代码是有意义的。