有一个办法可以实现,就是右键该项目,然后添加现有项(外部dll)到项目中,然后设置外部dll的属性为Copy always,这样编译的时候就会自动到Debug中。
如图:
但是,如果添加的外部dll多啦就不好看,所以我想把这个外部dll归并到一个目录里面。但是编译的时候外部dll就包含在Debug/dll/外部dll。
我怎么去掉中间的那个dll目录呢。
Debug/dll/外部dll。
中间的文件夹dll去掉
正解:
Copy "$(ProjectDir)ddll\*.dll" "$(ProjectDir)$(OutDir)"
把 *.dll 都设置为 “不复制”,然后在项目属性上,“后期生成事件”中写:
Copy $(ProjectDir)dll\*.dll $(OutDir)
Error 6 The command "Copy D:\my_demo\AllTempSolution\WPF.Test.Threads\ddll\*.dll bin\Debug\" exited with code 1. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets 902
PostBuildEvent:
Copy "D:\my_demo\AllTempSolution\WPF.Test.Threads\ddll\*.dll" "bin\Debug\"
系统找不到指定的路径。
D:\my_demo\AllTempSolution\WPF.Test.Threads\ddll\avfilter-2.dll
已复制 0 个文件。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3717,9): error MSB3073: The command "Copy "D:\my_demo\AllTempSolution\WPF.Test.Threads\ddll\*.dll" "bin\Debug\"" exited with code 1.
Build FAILED.
@KissFu: Copy "$(ProjectDir)dll\*" "$(OutDir)"
@KissFu:
xcopy "$(ProjectDir)dll\*.dll" "$(TargetDir)"
@KissFu:翻了下宏,VC 中 outdir 是全路径,C#中是相对路径,VC 不用双引号,C#用双引号。
右键那个dll文件属性,选择不复制本地!试试看看!