2017-02-09 49 views
2

[背景]包的常见DCP输出目录的目的是什么?

我正在创建公共运行时包,以在我的项目中使用。 我不喜欢弄得一团糟

C:\Users\Public\Documents\Embarcadero\Studio\*\Dcp 

目录没有目的。 无论如何,我必须将所有* .DCU文件的目录添加到库路径。 所以我在想重定向DCP文件到同一个目录下...

[问题(S)]

我可以更改默认的DCP输出目录,而不必担心副作用吗?

把DCP文件放在DCU之外的其他地方的目的是什么? 常见的DCP输出目录有什么意义?它提供我不知道的任何优势吗?

我明白一点常见的包输出目录 - 它在系统PATH变量中列出。

+0

看到http://docwiki.embarcadero.com/RADStudio/Berlin/en/Delphi_Compiled_Package_File_(*.dcp) – MartynA

+0

这是一个方式,使其他项目可以找到它 –

+0

但是这有什么区别,如果我存储DCP的文件如果我的DCU路径在“库路径”中列出,那么在公用文件夹内还是带有项目DCU文件? –

回答

6

IDE在设计时使用DCP文件进行标识符解析。这同样适用于配置为使用运行时BPL的应用程序以及IDE本身(用于扩展和组件)。如果您是组件开发人员,则BPL和DCP在技术上是您需要发货的唯一文件。 DCU和源都是可选的,尽管大多数组件开发者为了方便和调试目的而提供它们。

IDE的扩展API就是一个很好的例子。有些类存在于DCP和BPL文件中,但不存在于IDE附带的源代码或dcus中。

DCP只需要在IDE的搜索路径中。它们不一定必须位于公共DCP文件夹中。我相信这个文件夹是默认的主要原因是组件开发人员的利益。他们需要一个方便的位置来放置DCP文件,并且它需要处于松散权限的地方,以便编译器可以编写它们,并且IDE可以加载它们。