一、源起
操作系统总避免不了要重新安装,现在系统可以用 ghost 等工具软件进行备份,然后一键还原,比较方便。但通常 delphi 由于考虑到备份所占磁盘空间容量、后期在使用过程中会更改设置等情况,并不适合也 ghost 进去,只能选择再重新安装。
重新安装 delphi 过程并不复杂,next 然后等待安装完成即可,但一些第三方控件包的安装就很繁琐了。
通常在 delphi 里安装一个第三方组件包有以下步骤:
- 打开适合当前 delphi 版本的控件包(*.dpk),编译,安装
- 添加 Library 中的 Search Path 和 Browsing Path 路径
如果第三方控件包不多的话,也还可以接受,但控件包一多就很使人头疼了。
此外,通常情况下,重装操作系统,Windows 所在磁盘会被格式化,而 delphi 以及第三方控件包一般会选择安装在系统盘之外的地方,并没有大改变,再重新安装,实际上就是信息再登记一下。
因此,可以考虑备份现有的 delphi 中控件信息,等 windows 系统安装完成后,导入备份,就相对要方便多了。
二、准备工作:
delphi 需要备份的数据分为两类:
- 注册表中的数据
- BPL文件
(一)注册表中的数据
在 delphi 中,每安装一个控件,会在注册表的 Known Package 节下,记录包名及路径。
image.png同时,需要添加库搜索路径,会记录不同平台(如 win32、 win64等)的节下:
image.png(二)编译生成的 BPL 文件
当控件经过编译、安装后,会根据设置的不同,在不同的目录下生成 BPL 文件,通常有以下路径:
- 我的文档 目录下的 Bpl文件夹
例如:C:\Users\Public\Documents\Embarcadero\Studio\15.0\Bpl\- 指定的目录中(控件源目录)
例如:D:\source\Fastreports 5.1.11\LibD21\dclfrx21.bpl
三、进一步观察
(一)路径的变化情况
注册表中,当前安装控件包记录(Known Packages)的注册表项目节点,根据 delphi 版本的不同会有所区别。
其节点路径大致如:
HKEY_CURRENT_USER\Software\(公司名)\(Studio名)\(版本号)\Known Packages
其中,公司名根据 delphi 版本(开发公司)的不同大致可分为:
名称 | 版本 |
---|---|
Borland | Delphi5 - Delphi2007 |
Borland | Delphi2009 |
Embarcadero | Delphi2010 - Delphi Xe10 |
例如:
delphi 2007 的路径:
HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Known Packages
delphi XE2 的路径:
HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\Known Packages
最新版 delphi XE10.2 的路径:
HKEY_CURRENT_USER\Software\Embarcadero\BDS\19.0\Known Packages
(二)编译后生成 BPL 记录(Library)
其注册表路径通常在上面 Known Packages 下面,如下图:
image.png
网友评论