.net 如何在Visual Studio中生成期间将多个DLL放置在单独的文件夹中
我有一个WindowForms C#项目,其中包含一些外部引用以及对同一解决方案中其他类库项目的引用 构建窗口窗体项目时,我只希望引用的库存储在不同的位置(例如:bin\Release\libraries),而不是与.exe存储在同一文件夹中 有可能吗 这个问题在两年前就已经出现了,但没有足够的答案:.net 如何在Visual Studio中生成期间将多个DLL放置在单独的文件夹中,.net,visual-studio-2010,build,directory,.net,Visual Studio 2010,Build,Directory,我有一个WindowForms C#项目,其中包含一些外部引用以及对同一解决方案中其他类库项目的引用 构建窗口窗体项目时,我只希望引用的库存储在不同的位置(例如:bin\Release\libraries),而不是与.exe存储在同一文件夹中 有可能吗 这个问题在两年前就已经出现了,但没有足够的答案: 在构建过程中,我只需要将几个第三方程序集放入单独的文件夹中。如果我要更改生成路径,它会将所有程序集放在那里,而这不是我想要的您可以向项目中添加生成后事件,将第三方DLL从输出文件夹bin\Rele
在构建过程中,我只需要将几个第三方程序集放入单独的文件夹中。如果我要更改生成路径,它会将所有程序集放在那里,而这不是我想要的您可以向项目中添加生成后事件,将第三方DLL从输出文件夹bin\Release移动到子文件夹中
在项目上单击鼠标右键,选择“属性”,然后选择“生成事件”,在visual studio中将生成后事件添加到项目中,以将所需DLL复制到相关位置
然后,您将需要更新引用,并可能设置一个PATH变量,以确保项目知道它们的位置我尝试了此副本/Y“$(TargetDir)cairo.dll”“$(SolutionDir)lib\cairo.dll”,但我退出时出现了代码1错误,cairo.dll肯定出现了错误。请尝试删除
cairo
:copy/Y“$(TargetDir)cairo.dll”“$(SolutionDir)lib\cairo.dll
。此外,请确保文件夹lib
实际存在于$(SolutionDir)
中。实际上,根据您的问题,我认为它应该是$(TargetDir)
取而代之。除此之外,我可能还有一个愚蠢的问题,那就是如何更新引用和路径。因为当我添加对特定dll的引用时,它会自动复制到生成路径中,我想将其移动到文件夹中,在生成后事件中复制其他必要的dll。我已经找到了解决方案,我需要做的就是stbuild move创建了程序集,然后将其添加到congif文件中,该程序应该查看特定的子目录。在上徘徊,所以我找到了您的问题。我,这是唯一一个对我非常有效的解决方案。