首页 > 解决方案 > 新安装的库的 Delphi 10.x“无法解析单元名称”

问题描述

我在安装一个第三方库的时候遇到了下面这个令人费解的情况,在这个例子中是Virtual Treeview,在这里我将作为一个例子。

按照 INSTALL.txt 中的安装过程后,新组件出现在 Delphi 的组件面板中,并且可以添加到表单中。

但是,构建提供的示例项目之一,在这种情况下“最小”失败,说:

'Cannot resolve unit name "VirtualTrees" at line xxx',这是列出 VirtualTrees 的使用语句。

与该症状一致,在源代码编辑器中,(使用)VirtualTrees 和子组件声明用红色波浪线标记,表示标识符未声明或未解析。

提供的演示项目设置为针对 Windows 32。但令人费解的是,如果我将目标切换到 Windows 64,它将编译。

安装包括:

  1. 将提供的 zip 文件解压缩到您找到源包的任何位置。

  2. 在 Delphi 中,打开项目组:File > Open .... VirtualTreeView.groupproj

  3. 加载后,在项目树中,右键单击 VirtualTreesD26.bpl > Install。

  4. 使用“工具 > 选项 > 语言 > Delphi 选项 > 库 > 库路径 > [...]”将 VirtualTreeView 的“源”文件夹添加到库路径

是什么让 IDE 了解该组件,但随后无法为 Windows 32 编译,而为 Windows 64 编译成功?

标签: delphivirtualtreeviewdelphi-10.3-rio

解决方案


每个目标都有自己的库路径。您已将 VT 路径添加到 Win64 目标,但需要对 Win32 目标执行相同操作。

或者,从 Win64 目标搜索路径中删除 VT 路径,并将它们添加到适用于所有项目的目标中,然后它们将被其他项目继承。

在选项对话框中有一个下拉控件,允许您指定要应用设置的目标。


推荐阅读