1. 为什么 RAD Studio 10.4.2 的安装值得单独写一篇避坑指南
RAD Studio 10.4.2 是 Embarcadero 在 Delphi 和 C++Builder 发展线上一个相当特殊的存在。它属于 10.4 Sydney 系列的第二个更新版本,内部版本号是 27.0.40680.4203,修复了 10.4.1 中大量让人头疼的 IDE 崩溃、代码补全失效、调试器断点漂移等问题,同时又没有引入 11 Alexandria 那样大的架构变动。对于还在维护大量 VCL 项目、FMX 跨平台项目,或者手里攥着一堆老 Delphi 7 代码需要逐步迁移的团队来说,10.4.2 往往是一个“稳定压倒一切”的折中选择。
但问题也恰恰出在这里。RAD Studio 的安装程序历来不是那种“下一步下一步就完事”的类型。它涉及 ISO 镜像加载、GetIt 包管理器、可选的 InterBase 服务端与客户端、平台 SDK 勾选、激活授权、首次启动时的配置向导,以及一个经常被忽略的步骤——安装完成后还需要手动确认编译器路径和库路径是否正确写入环境。任何一步出问题,轻则编译报错找不到单元,重则 IDE 启动直接闪退,甚至连卸载都卸不干净。
我前后在不同机器上装过 10.4.2 不下十次,有物理机、有虚拟机、有纯净系统、也有装了 Visual Studio 和多个版本 RAD Studio 的“脏环境”。踩过的坑包括但不限于:ISO 挂载后安装程序提示“找不到有效安装源”、勾选了 InterBase 导致安装卡在 80% 不动、激活后 IDE 仍然提示试用版、首次编译 VCL 项目报“找不到 System.pas”等等。这些问题在官方文档里往往只有一句话带过,但在实际操作中足以让人耗掉一整个下午。
这篇内容就是把这些经验整理出来,从镜像加载一直讲到首次运行成功编译一个 VCL 程序。适合两类人看:一是第一次接触 RAD Studio、准备在干净环境里装 10.4.2 的新手;二是装过但被各种奇怪报错折腾过、想搞清楚背后原因的老手。我会尽量把每一步“为什么这么做”讲清楚,而不是只给一串操作步骤。
2. 安装前的环境准备与镜像处理
2.1 系统要求与硬件底线的实际考量
官方给出的最低配置看起来不高:2GB 内存、10GB 磁盘空间、支持 SSE2 的处理器。但这是“能启动”的底线,不是“能用”的底线。我实测下来,在 4GB 内存的虚拟机上装 10.4.2,光是 IDE 启动就要等将近两分钟,打开一个中等规模的 VCL 项目后内存直接飙到 3.5GB 以上,随便编译一下就开始疯狂读写页面文件。所以我的建议很直接:物理机至少 8GB 内存,虚拟机至少分配 6GB 且开启固态硬盘直通;磁盘空间预留 30GB 以上,因为 ISO 本身约 6GB,安装后目录约 8-12GB,再加上 GetIt 缓存的临时文件、编译中间产物,20GB 是很快见底的。
操作系统方面,Windows 10 64 位专业版或企业版是最稳妥的选择。家庭版能用,但在涉及 IIS 调试、本地 Web 服务、部分 SDK 组件时会有权限和功能上的限制。Windows 7 虽然官方仍标注支持,但 10.4.2 的安装程序在 Win7 上对 .NET Framework 版本和 SHA-2 签名补丁有额外要求,如果系统没有提前打好补丁,安装程序会在解压阶段直接报错退出。Windows 8.1 我不推荐,遇到过多次 GetIt 包管理器无法连接的情况。
还有一个容易被忽略的点:用户账户控制(UAC)。RAD Studio 的安装程序需要写入 Program Files、注册表 HKLM 以及系统环境变量,如果 UAC 设置为最高级别且当前账户不是管理员,安装到一半会弹出权限请求,如果没注意点了“否”,后续步骤会全部失败但安装程序不一定报错。我的做法是安装前临时把 UAC 调到“从不通知”,装完再调回去。
2.2 ISO 镜像的获取与校验
10.4.2 的安装介质通常是一个约 6GB 的 ISO 文件,文件名类似RADStudio-10.4.2-27.0.40680.4203.iso。这个文件从官方渠道获取后,第一件事不是双击挂载,而是校验哈希值。我遇到过两次下载过程中网络波动导致 ISO 尾部数据损坏的情况,挂载后安装程序能启动,但解压到某个组件时提示“cab 文件损坏”,排查了半天才怀疑到镜像本身。
校验方法很简单,用系统自带的certutil就行:
certutil -hashfile RADStudio-10.4.2-27.0.40680.4203.iso SHA256把输出结果和官方页面公布的 SHA256 值对比,一致再继续。不一致就重新下载,别抱侥幸心理。
校验通过后,Windows 10 下直接双击 ISO 文件即可挂载为虚拟光驱,盘符通常是最后一个可用字母。如果你用的是 Windows 7 或者虚拟机环境不支持直接挂载,可以用 7-Zip 把 ISO 解压到一个本地目录,效果一样,但要注意解压路径不要有中文和空格,否则安装程序内部调用某些命令行工具时会因为路径解析问题失败。我一般解压到D:\RADSetup\这种纯英文短路径下。
注意:不要在网络驱动器或映射盘上运行安装程序。安装过程中会频繁读写临时文件,网络延迟会导致安装程序误判为磁盘错误。
2.3 安装前的清理工作
如果这台机器之前装过任何版本的 RAD Studio、Delphi 或 C++Builder,哪怕已经卸载了,也建议做一次彻底清理。残留的注册表项和公共目录会导致新版本安装时路径冲突。重点检查这几个位置:
C:\Program Files (x86)\Embarcadero\和C:\Program Files\Embarcadero\下是否有残留目录C:\Users\Public\Documents\Embarcadero\下的公共配置- 注册表
HKEY_CURRENT_USER\Software\Embarcadero\和HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Embarcadero\ - 系统环境变量中是否还有指向旧版本
bin目录的PATH项
清理完重启一次再开始安装,这一步花五分钟,能省掉后面可能出现的“安装程序检测到旧版本但无法升级”的尴尬。
3. 安装过程中的关键选项与实操细节
3.1 安装类型与组件勾选的取舍逻辑
安装程序启动后,第一个真正需要做决策的界面是组件选择。这里有几个选项直接决定了后续的使用体验和磁盘占用。
平台选择方面,10.4.2 支持 Windows 32 位、Windows 64 位、macOS、iOS、Android 和 Linux。如果你只做 Windows 桌面开发,那就只勾 Windows 两项,安装体积能控制在 8GB 左右。但要注意,Windows 64 位编译器在 10.4.2 中已经相当成熟,很多第三方库也提供了 64 位版本,建议至少把 Windows 32 位和 64 位都勾上,方便做兼容性测试。macOS 和 iOS 平台需要额外的 SDK 配置,而且必须在 macOS 机器上完成部分步骤,如果手头没有 Mac 设备,勾了也用不了,反而增加安装时间和磁盘占用。
InterBase是这里的一个重点。安装程序会提供 InterBase Server、InterBase Client、InterBase ToGo 等选项。我的建议是:如果你不确定自己是否需要,先只勾 InterBase Client。Server 版本会安装一个本地数据库服务,占用 1521 端口,开机自启,而且默认配置下内存占用不小。很多开发者装完之后发现服务列表里多了一个 InterBase Server,想关又不敢关,其实如果只是开发阶段连接远程数据库或者用 FireDAC 做本地测试,Client 加 ToGo 就够了。ToGo 是嵌入式版本,不需要独立服务进程,适合做单机应用的数据存储。
GetIt 包管理器相关的选项建议全部保留。10.4.2 的很多实用组件(比如 RAD Server、部分平台 SDK 补丁)都是通过 GetIt 分发的,安装时如果跳过了 GetIt 组件,后续再想装会很麻烦。
帮助文档(Help Files)看个人习惯。离线文档大约占 1.5GB,如果你习惯在线查文档,可以跳过,但要注意 10.4.2 的在线帮助有时候会跳转到新版本页面,内容对不上。
3.2 安装路径与目录结构的规划
默认安装路径是C:\Program Files (x86)\Embarcadero\Studio\21.0\。这里的21.0是 10.4.2 的内部版本目录号,和产品版本号不是一回事。我建议保持默认路径不变,原因有两个:一是很多第三方库和构建脚本硬编码了默认路径,改了之后需要额外配置;二是 C 盘通常空间充足,没必要为了省几个 G 把 IDE 装到 D 盘,反而可能因为权限问题导致 GetIt 安装组件失败。
但有一个例外:公共文档目录(Public Documents)可以改。默认在C:\Users\Public\Documents\Embarcadero\,这个目录存放的是项目模板、示例代码、GetIt 缓存等,会随着使用不断增大。如果你 C 盘空间紧张,可以在安装时把这个路径改到空间更大的分区。不过要注意,改完之后如果多用户使用同一台机器,每个用户都需要有该目录的读写权限。
3.3 安装过程中的卡顿与假死判断
安装过程大约需要 20 到 40 分钟,取决于磁盘速度和勾选的组件数量。有几个时间点特别容易让人误以为安装卡死了:
- 解压阶段:进度条长时间停在某个百分比不动,但硬盘灯在闪。这是正常的,安装程序在解压大体积的 cab 文件,耐心等。
- 注册组件阶段:进度条走到 80% 左右会明显变慢,因为要注册大量 COM 组件和文件关联。
- InterBase 配置阶段:如果勾选了 InterBase Server,安装程序会尝试初始化数据库实例,这一步在机械硬盘上可能耗时 5 分钟以上。
真正的卡死通常伴随硬盘灯常灭、CPU 占用为零。如果超过 15 分钟没有任何变化,可以打开任务管理器看看安装程序进程是否还在响应。如果无响应,先别急着结束进程,等够 20 分钟再说。我遇到过一次在虚拟机上安装,因为磁盘 IO 被其他虚拟机抢占,安装程序假死了将近半小时,最后还是自己恢复了。
实操心得:安装过程中把杀毒软件的实时监控临时关掉。RAD Studio 安装程序会释放大量临时可执行文件,杀毒软件逐个扫描会严重拖慢速度,甚至误报拦截导致安装失败。装完再开。
4. 激活、首次启动与编译环境验证
4.1 激活流程中的常见报错与处理
安装完成后第一次启动 IDE,会弹出激活向导。10.4.2 支持在线激活和离线激活两种方式。在线激活需要输入序列号并登录 Embarcadero 账户,正常情况下几十秒就能完成。但这里有几个高频问题:
问题一:激活后仍然提示试用版。这通常是因为 IDE 以普通用户权限运行,而激活信息写入了需要管理员权限的位置。解决办法是右键 IDE 快捷方式,选择“以管理员身份运行”,重新走一遍激活流程。激活成功后,后续正常启动即可,不需要每次都管理员运行。
问题二:在线激活超时。如果网络环境对 Embarcadero 的激活服务器访问不稳定,可以改用离线激活。离线激活需要生成一个请求文件,上传到指定页面,再下载激活文件导入。这个过程在官方文档里有详细说明,但要注意请求文件的有效期通常只有 24 小时,过期需要重新生成。
问题三:多版本共存时的授权冲突。如果机器上同时装了 10.4.2 和其他版本,激活信息可能互相覆盖。建议每个版本使用独立的序列号,或者至少确保激活时只运行一个版本的 IDE。
4.2 首次启动配置向导的选项解析
激活成功后,IDE 会进入首次配置向导,询问一些默认设置。这些设置后续都可以在 Tools > Options 里改,但第一次选对了能省不少事。
默认项目类型:建议选 VCL Application。即使你主要做 FMX,VCL 项目的编译速度更快,适合用来验证环境是否正常。
编辑器主题和字体:这个看个人喜好,但要注意如果选了深色主题,某些第三方组件的设计器可能显示异常。我一般先用默认的 Light 主题,确认环境没问题后再换。
关联文件类型:建议全部勾选,这样双击.pas、.dpr、.cpp等文件时会自动用 RAD Studio 打开。如果你同时装了 Visual Studio Code 等其他编辑器,可能会有关联冲突,装完后在系统设置里调整一下就行。
GetIt 包管理器初始化:首次启动时 GetIt 会尝试连接服务器获取可用包列表。如果网络不通,这一步会卡住或者报错,但不影响 IDE 基本功能。可以稍后在 IDE 里手动触发。
4.3 验证编译环境:从新建项目到成功运行
配置向导结束后,不要急着打开现有项目,先新建一个最简单的 VCL Application 来验证环境。具体步骤:
- File > New > VCL Application - Delphi(或者 C++Builder,取决于你主要用哪个语言)
- 在弹出的向导里直接点 OK,使用默认设置
- 此时 IDE 会自动生成一个包含主窗体的项目
- 按 F9 编译并运行
如果一切正常,你会看到一个空白窗体弹出。这个过程看似简单,但能验证编译器路径、库路径、调试器、运行时包是否都配置正确。如果这一步就报错,常见的错误信息和原因如下:
| 错误信息 | 可能原因 | 处理方式 |
|---|---|---|
F2613 Unit 'System' not found | 库路径未正确写入 | 检查 Tools > Options > Language > Delphi > Library 中的路径 |
F2063 Could not compile used unit | 编译器版本与库不匹配 | 确认项目使用的平台和编译器与安装的组件一致 |
Unable to create process | 杀毒软件拦截或路径含中文 | 关闭杀毒软件实时监控,检查项目路径 |
Debugger assertion failed | 调试器未正确注册 | 以管理员身份运行 IDE,重新注册调试器 |
编译成功后,再测试一下 64 位目标。在 Project Manager 里右键 Target Platforms > Windows 64-bit,选择 Activate,然后重新编译运行。这一步能验证 64 位编译器和相关库是否完整。
4.4 InterBase 与数据库连接的初步验证
如果你在安装时勾选了 InterBase,建议在首次运行后验证一下数据库连接是否正常。打开 IDE 的 Data Explorer(View > Data Explorer),尝试新建一个 InterBase 连接。默认的本地实例通常是localhost或者127.0.0.1,端口 1521,用户名SYSDBA,密码在安装时设置过。
如果连接失败,先检查 Windows 服务列表里InterBase Server是否正在运行。如果服务没启动,手动启动一下,并设置为自动启动。如果服务启动失败,查看 Windows 事件查看器里的应用程序日志,通常会有具体的错误信息,比如端口被占用或者数据库文件损坏。
对于只是用 FireDAC 做本地单机数据存储的场景,其实可以跳过 InterBase Server,直接用 InterBase ToGo 或者 SQLite。10.4.2 内置了 SQLite 的 FireDAC 驱动,不需要额外安装任何东西,新建一个 FDConnection 把 DriverId 设为 SQLite 就能用,对于小型工具类项目非常方便。
5. 常见问题速查与独家避坑技巧
5.1 安装阶段高频问题汇总
问题:安装程序提示“找不到有效安装源”。这通常发生在用 7-Zip 解压 ISO 后直接运行 setup.exe 的情况下。原因是安装程序需要访问 ISO 根目录下的某些标识文件,解压时如果路径层级不对就会找不到。解决办法是确保解压后的目录结构和 ISO 内部一致,或者直接用虚拟光驱挂载。
问题:安装到一半提示“磁盘空间不足”,但明明还有几十 G。检查一下临时目录所在分区。安装程序默认使用系统临时目录(通常是 C 盘),如果 C 盘剩余空间小于 15GB,即使目标安装分区空间充足也会报错。可以手动设置环境变量TEMP和TMP指向空间更大的分区,再重新运行安装程序。
问题:安装完成后开始菜单里找不到 IDE 快捷方式。这种情况多半是安装时没有勾选“创建快捷方式”选项,或者开始菜单索引出了问题。可以直接去安装目录下的bin文件夹找bds.exe,手动创建快捷方式。
5.2 首次运行与编译阶段的高频问题
问题:IDE 启动时闪退,没有任何错误提示。最常见的原因是显卡驱动与 IDE 的渲染模式不兼容。10.4.2 的 IDE 使用了硬件加速渲染,在某些老显卡或虚拟机显卡上会崩溃。解决办法是给bds.exe创建一个快捷方式,在目标后面加上-np参数(禁用硬件加速),或者设置环境变量RAD_STUDIO_DISABLE_GPU=1。
问题:编译时提示“找不到单元”,但单元文件明明在项目目录里。检查项目的搜索路径(Search Path)设置。10.4.2 的默认搜索路径不包含项目子目录,如果单元文件放在子文件夹里,需要在 Project > Options > Delphi Compiler > Search Path 里手动添加相对路径。
问题:调试时断点无法命中,或者断点位置漂移。这通常是编译器优化和调试信息不匹配导致的。在 Project > Options > Compiling 里,把 Optimization 设为 False,Debug Information 设为 True,再重新编译。另外,确保没有勾选“Use debug .dcus”之外的奇怪选项。
问题:C++Builder 项目链接时提示“无法解析的外部符号”。检查是否混用了不同版本的库文件。10.4.2 的 C++Builder 使用 Clang 增强编译器,和旧版 bcc32 的库不兼容。如果项目里引用了第三方静态库,需要确认该库是否提供了 10.4.2 兼容的版本。
5.3 独家避坑技巧与经验总结
技巧一:安装前创建系统还原点。RAD Studio 的安装会修改大量系统设置,万一出问题,有还原点可以快速回退,比手动清理快得多。
技巧二:把 ISO 和安装后的目录加入杀毒软件白名单。不仅是安装过程,日常编译时杀毒软件扫描bin目录下的编译器可执行文件也会拖慢速度。把整个安装目录加入排除列表,编译速度能有肉眼可见的提升。
技巧三:首次安装成功后,立刻备份一份 IDE 配置。10.4.2 的配置信息主要存在注册表和%APPDATA%\Embarcadero\下。用 IDE 自带的 Tools > Options > Export 功能导出设置,或者手动复制相关目录。以后换机器或者重装时,直接导入就能恢复熟悉的环境。
技巧四:GetIt 包管理器如果连不上,可以手动下载包文件。GetIt 的包本质上是一些压缩文件,可以从官方渠道单独下载后,通过 GetIt 的“Install from local file”功能安装。这样即使网络环境不稳定,也不影响获取组件。
技巧五:不要急着装第三方组件。先确保原生环境能正常编译运行,再逐个安装第三方组件。每装一个就测试一次编译,这样出问题时容易定位是哪个组件引起的。我见过太多人一次性装十几个组件,结果 IDE 启动不了,只能全部重来。
5.4 关于版本选择和后续升级的几点建议
10.4.2 虽然稳定,但毕竟不是最新版本。如果你是新项目,可以考虑更新的版本;但如果是维护现有项目,尤其是依赖大量第三方组件的项目,升级前一定要确认所有组件都有对应新版本的兼容版本。我个人的做法是:主力开发环境保持 10.4.2 不变,另外用虚拟机装一个新版本做技术预研,等新版本稳定了再逐步迁移。
另外,10.4.2 的更新补丁(Patch)建议全部打上。Embarcadero 会不定期发布一些修复补丁,通过 GetIt 或者独立安装包分发。这些补丁修复的问题往往就是日常开发中遇到的痛点,比如代码补全卡顿、调试器崩溃等。打补丁前同样建议创建还原点。
最后再分享一个小技巧:如果你在虚拟机里装 10.4.2,把虚拟机的显存调到最大,并且安装 VMware Tools 或对应的虚拟机增强工具。IDE 的界面渲染对显存有一定要求,显存不足时会出现界面闪烁、菜单残影等问题,虽然不是致命故障,但很影响使用体验。