Visual Studio解決方案中是否存在解決方案所需的.exes的適當位置。例如,我正在研究一個需要VHDCreate.exe,ISOCreate.exe,OSClone.exe和其他exes的工具。將他們納入解決方案的正確方法是什麼?我已經繼承了一個解決方案,它們只是卡在解決方案的業務層項目中的文件夾中。Visual Studio解決方案 - 您的解決方案所需的實用程序EXE的正確位置
我使用Visual Studio 2010中
Visual Studio解決方案中是否存在解決方案所需的.exes的適當位置。例如,我正在研究一個需要VHDCreate.exe,ISOCreate.exe,OSClone.exe和其他exes的工具。將他們納入解決方案的正確方法是什麼?我已經繼承了一個解決方案,它們只是卡在解決方案的業務層項目中的文件夾中。Visual Studio解決方案 - 您的解決方案所需的實用程序EXE的正確位置
我使用Visual Studio 2010中
我會建議在解決方案的水平上具有一個很好的組織工具文件夾中。然後,您可以使用解決方案文件夾將其與其餘項目分開。
這是與本地.dll
但概念是相同的。
Copy if newer
。.exe
或.dll
將被複制到生成輸出文件夾。.exe
被更新的版本將拉輸出文件夾中較新的一個。您可能需要閱讀麥克羅伯茨系列,如何設置一個.net開發樹。就我而言,Visual Studio默認的方式基本上被打破了。
單*。PDF:How to Set Up a .Net Development Tree
從根本上說,你的目錄結構應該是這樣的:
Meta/Development Root
Solution
Solution.sln
nant.build
lib
lib
目錄包含的第三方組件/由解決方案中的不同項目中引用的DLL。它受源代碼控制。項目參考應該指向這裏。tools
tools
目錄包含生成解決方案所需的所有第三方工具。它也在源代碼控制之下。 tools
目錄應包含您的項目—使用的nAnt
,nUnit
等版本,您的構建腳本應引用這些版本,而不是開發人員計算機上安裝的版本。bin
bin
目錄包含生成過程的該解決方案的輸出。每個項目必須配置爲指向此處。
debug
release
obj
obj
將在這裏指出,以及該在源樹的地方。可悲的是,Visual Studio並沒有提供這樣的官方方式(儘管我被告知,如果足夠足夠的話,VS可能會被黑客攻擊)。src
src
目錄是解決方案實際源代碼的根目錄。
project1
project1
的目錄。
project
.csproj` *.cs
等文件。源文件。project-n
如何構建單個項目,我認爲,一個完全獨立的話題,但應該有,WRT對解決方案和個人都會在名稱空間和文件系統層次結構之間建立對應關係。如果某個特定項目需要第三方程序集,而該第三方程序集不能用於解決方案中的其他項目,則可以爲每個這樣的項目目錄創建自己的目錄lib
,但這會將源代碼樹中的第三方程序集散開,所以不建議。
這可以很容易地被合併到安裝程序中嗎?或者這隻適用於XCopy類型的部署? – BuddyJoe 2012-04-02 18:41:53
哦,我以爲你是指構建...你真的應該有你的安裝合併模塊。 – 2012-04-02 18:43:19
確保在解決方案資源管理器中將它們標記爲'Copy if newer'。 – ja72 2012-04-02 18:50:06