visual c++ 使用解決方案來管理專案,專案之間還可能有依賴關係,設定適合自己的解決方案目錄結構,便於**的管理、程式的發布。
下面開始乙個虛擬解決方案設計:
假設此解決方案有應用程式專案a,動態鏈結庫專案b,靜態鏈結庫專案c,其中專案a依賴專案b和專案c,則構建解決方案專案結構如下圖所示:
而目錄結構則如下圖所示:
bin:存放所有動態鏈結庫和可執行程式,分debug和release兩個版本
a:應用程式專案資料夾
b:動態鏈結庫專案資料夾
c:靜態鏈結庫專案資料夾
doc:存放專案文件
include:存放引用庫的標頭檔案
lib:存放動態鏈結庫的導入庫、靜態鏈結庫
temp:存放臨時生成檔案,其中compile存放編譯時的中間檔案,link存放鏈結時的輸出檔案
除了doc需要自己建立外,其他資料夾無需手動建立。
專案結構建立步驟:
1.建立乙個新應用程式專案,名稱a,解決方案名稱為work,如下圖所示:
2.在"解決方案資源管理器"右鍵"解決方案work","新增"→"新建專案"→"win32"→"win32 專案",名稱為b,在"應用程式設定"選擇"dll"和"空專案";
3.同樣的方式新增乙個"win32專案",名稱為c,在"應用程式設定"選擇"靜態庫",去掉"預編譯頭"選項;
4.專案結構如下圖所示:
專案屬性設定
配置專案a的屬性
1.配置"所有配置","常規",
輸出目錄:$(solutiondir)temp\link\$(projectname)\$(configurationname)
中間目錄:$(solutiondir)temp\compile\$(projectname)\$(configurationname)
2."生成事件"→"生成後事件",
命令列:echo d | xcopy "$(targetpath)" "$(solutiondir)bin\$(configurationname)" /y
3."c/c++"→"常規",
附加包含目錄:$(solutiondir)include
4."鏈結器"→"常規",
附加庫目錄:$(solutiondir)lib
5."除錯",
命令:$(solutiondir)bin\$(configurationname)\$(targetfilename)
工作目錄:$(solutiondir)bin\$(configurationname)
配置專案b的屬性
1.配置"所有配置","常規"下,
輸出目錄:$(solutiondir)temp\link\$(projectname)\$(configurationname)
中間目錄:$(solutiondir)temp\compile\$(projectname)\$(configurationname)
2.【vs2008】配置"debug","鏈結器"→"常規"下,
輸出檔案:$(solutiondir)temp\link\$(projectname)\$(configurationname)\$(projectname)d.dll
【vs2010及以上】配置"debug","常規"下,
目標檔名:$(projectname)d
3.配置"所有配置","生成事件"→"生成後事件"下,命令列:
echo d | xcopy "$(targetpath)" "$(solutiondir)bin\$(configurationname)" /y
echo d | xcopy "$(targetdir)$(targetname).lib" "$(solutiondir)lib" /y
echo d | xcopy "$(projectdir)b.h" "$(solutiondir)include" /y
第三行為xcopy動態庫的標頭檔案,實際要根據所需進行改動名稱。
配置專案c的屬性
1.配置"所有配置","常規"下,
輸出目錄:$(solutiondir)temp\link\$(projectname)\$(configurationname)
中間目錄:$(solutiondir)temp\compile\$(projectname)\$(configurationname)
2.【vs2008】配置"debug","管理員"→"常規"下,
輸出檔案:$(solutiondir)temp\link\$(projectname)\$(configurationname)\$(projectname)d.lib
【vs2010及以上】配置"debug","常規"下,
目標檔名:$(projectname)d
3.配置"所有配置","生成事件"→"生成後事件"下,
命令列:
echo d | xcopy "$(targetpath)" "$(solutiondir)lib" /y
echo d | xcopy "$(projectdir)c.h" "$(solutiondir)include" /y
第二行為xcopy靜態庫的標頭檔案,實際要根據所需進行改動名稱。
最後設定專案生成順序
選單欄→"專案"→"專案依賴項",專案a依賴於b和c,如下圖所示:
編譯生成,可看到如下結果:
用tree命令看下資料夾結構:
Hybris 專案工程配置
1 控制台頁面進入platform目錄cd f hybris640 hybris bin platform並執行setantenv.bat生成對應的ant。2 執行ant modulegen生成一整個模組,回車選擇預設,輸入extention名 cui,輸入包名org.cui 生成成功,進入f hy...
Unity工程匯入iOS之專案配置
1.建立乙個新的資料夾用來存放unity檔案。將classes,libraries,mapfileparser.sh拖到專案中,選中 copy items if needed和create groups 將data拖到專案中,選中 copy items if needed和create folder...
專案工程檔案分類
工程檔案結構 括號中的文字在工程中已去掉 主要分四類 classes mainbusinessmodules 主業務模組 目前分為 三個模組,後續開發過程中如果有新功能和這三個功能關聯密切,則按mvc樣式建立資料夾放在其下 otherbusinessmodules 其他業務模組 networkreq...