我从 Delphi XE5 开始,我想将我的应用程序拆分为一个 exe 和多个可重用库。这意味着我不想在 DLL 或运行时包中拆分正在运行的 *.exe 应用程序。
为了实现这一点,我看到在 delphi 中我们可以创建运行时包,我遵循以下步骤:
- 我创建了一个新的 VCL Forms Application 项目(EXE 项目)。
- 我已将一个新的包项目(BPL 项目)添加到项目组中,并且我已修改其项目选项以将使用选项设置为“仅运行时”并将构建控制设置为“显式重建”。
- 我在 EXE 项目和 BPL 项目之间添加了一个依赖项(EXE 项目依赖于 BPL 项目)。
- 最后我编译了BPL项目并将生成的DCP文件作为运行时包添加到EXE项目中(Project options/Package/Runtime Packages)。
但是,当我在 EXE 项目上添加引用以使用 BPL 项目中的模块(例如 moduleX)时,编译器会给我一个如下错误:
[dcc32 致命错误] ModuleX.pas(7): F1026 File not found: 'C:\DDDProject\MyEXEProject\ModuleX.dcu'
如果我在 EXE 项目 (MyEXEProject) 中将“与运行时包链接”选项标记为选中,则解决方案编译时不会出错,但我无法运行或调试应用程序。
请问,谁能帮帮我?