【发布时间】:2010-12-17 08:03:59
【问题描述】:
我正在建立一个 svn 存储库,想知道我应该把 dll 文件放在哪里。
我目前所做的是将它们放在 /bin/debug 文件夹中,然后将它们链接到我在 Visual Studio 中的项目文件中。
这是这样做的方法吗?
【问题讨论】:
标签: visual-studio visual-studio-2010
我正在建立一个 svn 存储库,想知道我应该把 dll 文件放在哪里。
我目前所做的是将它们放在 /bin/debug 文件夹中,然后将它们链接到我在 Visual Studio 中的项目文件中。
这是这样做的方法吗?
【问题讨论】:
标签: visual-studio visual-studio-2010
我想您是在询问第三方 dll 文件,因为项目生成的输出 (exe/dll) 文件最好不要由 SVN 管理,因为它们在每次构建时都会重新生成。
我通常做的是创建一个 Lib 文件夹,它位于我的源代码树的顶层,并将所有需要的引用放在那里,通常在按工具或功能(日志记录、电子邮件、api 等)划分的附加文件夹中,等等……)
【讨论】:
您不应将 bin/Debug 或 bin/Release 中的任何内容放入源代码管理中。如果你这样做,当你清理你的解决方案或项目时,你会丢失它们。 您需要做的是创建一个文件夹,例如在解决方案文件夹中,并引用项目中的 dll。项目编译时,项目引用中的任何第三方 dll 都会复制到 bin/Debug 或 bin/Release 文件夹中。
【讨论】:
我们通常有一个名为 dlls 的单独文件夹或我们保存所有第 3 方 dll/程序集的文件夹
【讨论】:
仅在运行时才需要 Dll。为了快速修复,您可以将 dll 复制到 .exe 文件所在的 Debug 文件夹中。此 Debug 文件夹与 Visual Studio 中的解决方案 .sln 文件处于同一级别。每次开始一个新项目时你必须做的事情...Debug folder
更好的解决方案是将所有第三方 dll 以及所有相应的 .h 和 .lib 文件复制到 2 个文件夹中,例如 C:\dev\include 和 C:\dev\lib,然后添加这 2 个文件夹到您的路径环境变量一次。这样,您就可以从所有项目中访问它们,而无需一遍又一遍地复制它们。
现在,如果您希望某人能够在另一台计算机上运行您的项目,您需要将项目中所有需要的 .h、.lib 和 .dll 文件复制到您创建的单独文件夹中,例如包含和 lib 再次,在您自己的程序文件所在的项目目录中,如前面的帖子中所述。 Project folder
PS。对不起,它不允许我上传 2 个屏幕截图,所以请点击链接。
【讨论】:
我通常将它放在我的 Visual Studio 项目解决方案文件夹中的 Lib 文件夹中。我还将一直创建子文件夹以指示 dll 是用于 32 位还是 64 位构建,以及用于构建它的 Visual Studio 版本。所以像这样: Lib\WIN32\VC2015\ 。然后在项目的Project Properties中,在Debugging Configuration Property下,我将Environment设置为
PATH=$(SolutionDir)Lib\WIN32\VC2015;%PATH%
通过这样做,如果我愿意,我可以为不同的项目配置创建单独的 dll 文件夹,并且 dll 文件也可以很好地检查源代码控制。
【讨论】: