2016-06-17 117 views
1

我在delphi 10.1 Berlin中创建了一个包含组件(运行时包和设计包)的包。在项目中使用包

我想在一个vcl项目中使用这个包的组件。

我想要在项目中嵌入组件的代码。 (我不想将项目链接到extern bpl)

每次我编译项目时,Delphi都会告诉我们找不到组件的来源。 我可以在项目的路径中添加组件源的目录,但我不想那样做。 由于该组件的代码是在bpl中,我想必须有一个解决方案,德尔福将bpl“绑定”到项目而不知道组件的.pas或.dcu在哪里,但是我不能图怎么做。可能吗 ?怎么样 ?

回答

3

当我阅读你写的内容时,似乎你并不想在你的可执行文件中使用软件包。这是我从这个声明推断:

我不想将项目链接到extern bpl。

因此,您需要将源代码链接到项目中。有多种方法:

  1. 在可执行项目中包含源文件(.pas和任何辅助文件)。
  2. 将包含源文件的目录添加到项目搜索路径。
  3. 添加到项目搜索路径包含编译.dcu文件的目录。

你选择做的完全取决于你。

请注意,您还应该确保使用运行时软件包项目选项未针对您的可执行项目进行检查。

现在,我明白,在这个问题中,你说你不想做我建议你做的事。相反,你宁愿以某种方式将软件包嵌入到可执行文件中。但这并不是软件包的设计。如果你希望在可执行文件中包含所有内容,那么你就是这么做的。

+0

他可以调整全局库路径,以便它适用于所有项目,不是吗? – whosrdaddy

+0

@whosrdaddy这也可以做我猜,但我对个人全球路径过敏,并无视它们 –

+0

谢谢大家。我想避免在项目路径中添加多个目录。我将把所有的dcus放在一个目录中,并在路径中添加这个目录。 – Arsnow

1

Delphi需要知道组件的源文件(.pas或.dcu)在哪里。 您必须将源文件夹添加到库路径(可在工具 - 选项 - Delphi选项 - 库下找到)