您的位置:首页 > 其它

解决“没有找到 rtl100.bpl,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题。”

2010-05-17 10:45 621 查看
有时候,用Delphi写的程序,在本机自己的机器上运行没有问题,但发布后,交付给客户,运行时却提示“没有找到 rtl100.bpl,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题。”如下图





我在网上查了一下,确实缺少了rtl100.bpl文件导致的(有时还提示没有找到vcl100.bpl文件)。 大多数解决的办法都是在安装包中附加rtl100.bpl文件和vcl100.bpl文件,将来部署的时候放到目标计算机的System32文件夹中,或者部署到程序所在文件夹中。这种办法当然可行,同时自己编写的exe程序虽然体积大大减小(我写的一个Demo,大小只有36K,图形化的,加自己写的控件),但是软件就被分割成了好几个文件。如果项目里只有这一个exe的话,我们还是希望在部署后整个项目里就它一个文件,有没有办法做到呢?有!
编译之前在Delphi开发环境的Project Manager中找到要编译的程序,单击右键选择“Options”,在工程选项窗口的左侧选择“Packages”,如下图





此时的右侧最下方有Runtime packages选项,将“Build with runtime packages”前的钩打掉。点击OK。如下图





这时候再编译。你会发现程序的大小发生了明显的变化(我的Demo此时变成了414KB),也就是说编译器已经将rtl100.bpl和vcl100.bpl打入了我的Demo程序中。这样就能保证我的程序在部署后的目标机上确实能运行,而不用去关心该机器上有没有这两个文件。需要额外说明的是,当一个项目中有多个文件(两个或两个以上)的时候,我还是推荐将“Build with runtime packages”这个钩打上,部署的时候将rtl100.bpl和vcl100.bpl也放到程序的安装目录下,这些程序就都能调用公共的库,减小程序的体积。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐