Delphi搜索路径vs库路径vs浏览路径

Delphi搜索路径vs库路径vs浏览路径,delphi,Delphi,在Delphi中,我可以通过将文件夹添加到项目搜索路径或库路径来包含文件夹的源代码。搜索路径仅适用于当前项目,而库路径适用于使用IDE打开的任何项目 除此之外,搜索路径和库路径之间是否存在功能差异 我问这个问题的原因是:我有一个文件夹X,其源由项目a使用。当我将该文件夹包含在项目a的搜索路径下时,它表示无法在该文件夹中找到特定文件。当我把它包含在库路径下时,projecta编译得很好 直到现在,我一直认为唯一的区别是一个是项目特定的,另一个是全球的 当我们谈到这个话题时(冒着愚弄自己的风险):“

在Delphi中,我可以通过将文件夹添加到项目搜索路径或库路径来包含文件夹的源代码。搜索路径仅适用于当前项目,而库路径适用于使用IDE打开的任何项目

除此之外,搜索路径和库路径之间是否存在功能差异

我问这个问题的原因是:我有一个文件夹X,其源由项目a使用。当我将该文件夹包含在项目a的搜索路径下时,它表示无法在该文件夹中找到特定文件。当我把它包含在库路径下时,projecta编译得很好

直到现在,我一直认为唯一的区别是一个是项目特定的,另一个是全球的


当我们谈到这个话题时(冒着愚弄自己的风险):“库路径”和“浏览路径”之间的功能区别是什么?

据我所知,浏览路径是调试器在断开/跨入不在库路径中的源文件时应该查找的文件

假设您使用了第三方组件。将库路径指向该组件的预编译dcu文件所在的目录。编译时,项目将使用这些dcu文件。这很好,因为它不会在每次构建时重新编译

但是,通过包含已编译的dcu文件,您就失去了调试第三方组件的可能性。如果在浏览路径中包含源文件所在的路径,则调试器将找到源文件,并允许您介入其中

vcl的默认设置显示了这一点。在库路径中,他们放置了$(BSD)\Lib,在浏览路径中,他们放置了$(BDS)\SOURCE\WIN32

更新:有两种不同类型的搜索路径:编译器搜索路径和调试器搜索路径。第一个是编译器在编译期间查找文件的位置,第二个是调试器在调试期间查找源文件的位置

编译器将仅在库路径或项目搜索路径中查找文件。 调试器将在编译器搜索路径加上浏览路径、项目的调试源路径和全局调试搜索路径中查找标识符


在全局或pr项目中指定内容应该没有任何区别

调试器还将在库路径中查找文件。

这也是我的理解,这是有道理的。但这意味着作为一个实际问题,所有3个都是相同的。。。这只是一个组织问题。这与我在这个问题上的经验不符。不,不一样。如果您在just browse path中包含您的路径,它需要编译。您说“当我将该文件夹包含在Project A的搜索路径下时,它表示无法在该文件夹中找到特定的文件。”这就是此处指出的问题:它应该找到它。您是否已检查文件夹设置的搜索路径是否符合当前目标平台和生成配置?