Visual Studio項目的生成事件代碼


我們打開vs的項目屬性可以看到有生成事件,如下圖:

可以看到有兩塊空白區域,這個空白區域可以讓我們寫代碼或腳本來處理編譯生成前后的時候,處理一些事情,今天就簡單的來說說這兩塊。

生成前事件命令行

我想可以在這里動態生成程序的版本號,將時間增量(DateTime)信息添加到AssemblyFileVersion屬性中,該屬性具有不破壞任何依賴性的優點。

你可以使用預生成事件生成文件,那是在項目的預生成,事件中:

echo [assembly:System.Reflection.AssemblyFileVersion("%date:~0,4%.%date:~5,2%%date:~8,2%.%time:~0,2%%time:~3,2%.%time:~6,2%")] > $(ProjectDir)Properties\VersionInfo.cs


將生成的VersionInfo.cs文件(Properties子文件夾)包含到項目中,並且AssemblyInfo.cs文件中的AssemblyFileVersion代碼注釋掉,每次編譯的時候就是當前時間作為版本號了。

 

后期生成事件命令行

我想讓程序生成的類庫輸出到指定的目錄下,方便供其他程序引用和訪問,保證其他程序引用到的都是最新的類庫程序。

set outPath=$(SolutionDir)$(ProjectName).Output
if exist  "%outPath%" rd /s /q "%outPath%"
md "%outPath%"
copy $(TargetDir) "%outPath%"

以上代碼直接在項目的同級目錄生成以項目名+.Output的文件夾,並把bin中的dll復制到里面。

好了,試試吧,看看是否有版本號和輸出到指定目錄下?


免責聲明!

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



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