Visual Studio .NET程序集輸出路徑配置


這幾天琢磨.NET下的開源界面框架Fluent.Ribbon的時候發現人家編譯后的輸出文件都集中在一個Build文件夾中,以前倒是指定過編譯生成的最終程序集的路徑,但是編譯器生成的中間文件始終在工程文件夾下的obj文件夾當中,工程屬性能改的就那么幾個。剛開始猜想肯定是.csproj文件里面有文章,既然這個文件本來就是一個基於XML標准的文件,那咱就以文本形式打開瞧瞧。和Fluent.Ribbon.csproj文件一對比,果然有所發現。人家在第一個<PropertyGroup>…</PropertyGroup>標簽下多了一個<BaseIntermediateOutputPath>..\build\obj\NET 4.5</BaseIntermediateOutputPath>的標簽。一下是我嘗試的步驟(我的開發工具是VS2013):

 

 

================================= 先割為敬 ===================================

 

 

如圖一所示,這是VS默認的編譯路徑,在右側紅色方塊中有兩個灰色文件夾bin和obj(看不見的童鞋請先點擊一下綠色箭頭處的按鈕),他是干嘛的想必也不用我廢話。

 

VS_Project_Output_Demo_01

圖一

接下來,我用Sublime Text打開.csproj文件,如圖二所示。

 

VS_Project_Output_Demo_02

圖二

 

在圖二中,包含了若干個<PropertyGroup>…</PropertyGroup>標簽。其中有兩個標簽中的<OutputPath>…</OutputPath>指定了Debug編譯和Release編譯生成的程序集的輸出路徑。若讀者修改過編譯平台,該標簽對可能有所出入。但都大同小異。接下來我修改了輸出程序集路徑標簽,並在第一個<PropertyGroup>…</PropertyGroup>標簽中增加了<BaseIntermediateOutputPath>..\Build\obj</BaseIntermediateOutputPath>標簽,如圖三所示。

 

VS_Project_Output_Demo_03

圖三

然后切換到VS窗口,此時IDE會告訴我們文件被外部程序修改,此時我們選擇Reload All,如圖四所示。

 

VS_Project_Output_Demo_04

圖四

接着刪除右側紅色方塊中的兩個文件夾(bin、obj),如圖五所示。

 

VS_Project_Output_Demo_05

圖五

重新編譯生成工程,此時打開工程文件所在文件夾,你會發現編譯器沒有產生bin和obj文件輸出,而是將文件全部輸出到了項目解決方案根目錄下的Build文件夾當中。如圖六所示。

 

VS_Project_Output_Demo_06

圖六

 

本文工程文件:VisualStudio.Project.Output.Demo.zip

PS:WPF工程和WinForm工程均可通過以上方法修改,其余工程項目我還沒有嘗試過,用興趣的童鞋不妨試試,方便的話也順便告訴我一下 :)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM