我正在使用一些库,我添加了对该库dll的引用,并将“Copy Local”设置为true。
但我想将dll的位置更改为exe文件夹中的子文件夹,而不是exe
这怎么可能?
感谢
更新:
我使用了以下的构建后事件[作为Jon Skeet推荐]
move /y $(TargetDir)\System.Data.SqlServerCe.dll $(TargetDir)\Lib\SqlSrvCe\System.Data.SqlServerCe.dll
答案 0 :(得分:2)
您的.exe文件需要一个.config文件,以便更改探测路径。子目录没问题,只需使用<probing>
元素,其privatePath属性是相对文件夹名称。
请注意,您将从IDE中获得一些帮助以将DLL置于该位置。你需要一个post build事件,如果需要的话创建文件夹,xcopy就是那里的DLL。像这样:
if not exist "$(TargetDir)mumble" mkdir "$(TargetDir)mumble"
xcopy /d /y "$(TargetDir)something.dll" "$(TargetDir)mumble"
答案 1 :(得分:1)
我不知道它是否在“普通”构建规则中是可行的,但您可以添加基本上移动文件的构建后步骤。它会很难看,但它应该有用。
答案 2 :(得分:0)
你需要它作为参考吗?或者只是将dll复制到所需位置?
如果您不需要参考,请尝试将其添加到项目中并将其设置为始终复制。