【发布时间】:2011-10-17 07:47:14
【问题描述】:
我正在为目前没有的组件创建一个安装程序(例如优秀的SynEdit 编辑器库),这也让我能够比我更好地理解设计和运行时包。
我想确保最干净的部署,所以我知道许多单元将进入运行时包,并且及时我可能会使用“使用运行时包构建”进行部署,所以这一切都很好。但是,设计时包通常需要运行时包,这就是我遇到麻烦的地方。通常我会创建一个项目组,其中包含运行时包项目 (xxx-RXE),然后是设计时包项目 (xxx-DXE)。全部构建,一切都很好。我在我自己的库路径和install the design-time package into the IDE using the registry 中以 BPL、DCP 和 DCU 形式部署这两个包。然后将库路径添加到环境设置中。当我打开 Delphi(D7 和 XE 都是如此)时,我得到“无法加载包 XXXX-DXE,找不到库包 xxx-RXE.bpl。如果我通过修改设计时包以从“requires”中删除 xxx-RXE.dcp 并直接用单位替换它来作弊,一切都很好。
我试图避免在 Delphi 文件夹中插入任何内容,所以我的项目结构是这样的(仅显示 XE,D7 类似)。将包设置为输出单元,bpl 和 dcp 为“..\Library\Delphi15”,所有包都被赋予“..\Source”的搜索路径,设计时包的附加搜索路径为“..\Library” \Delphi15"(查找所需的运行时包)。
\Root
\Packages
xxx.groupproj
xxx-RXE.dpk
xxx-DXE.dpk
\Library
\Delphi15
(output of all dcus, dcp's, bpl's etc. Manually added *.res, *.inc and *.dfm's).
\Source
(The original project source files as used by the packages).
Delphi 不使用上述文件夹,在我的安装程序创建以下部署文件夹之前,我不会对 Delphi IDE 执行任何操作:
c:\Program Files\xxx\Library\Delphi15
(包含所有BPL、DCP、DCU等,也是放入环境库路径的路径)。
所以我不清楚的是,如果所有文件都在该文件夹中并带有路径,为什么 delphi 看不到它们?
感谢您的帮助。
【问题讨论】:
标签: delphi deployment runtime packages design-time