Visual Studio项目的生成事件代码

咱们打开vs的项目属性能够看到有生成事件,以下图:spa

能够看到有两块空白区域,这个空白区域能够让咱们写代码或脚原本处理编译生成先后的时候,处理一些事情,今天就简单的来讲说这两块。命令行

生成前事件命令行code

我想能够在这里动态生成程序的版本号,将时间增量(DateTime)信息添加到AssemblyFileVersion属性中,该属性具备不破坏任何依赖性的优势。blog

你能够使用预生成事件生成文件,那是在项目的预生成,事件中:事件

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代码注释掉,每次编译的时候就是当前时间做为版本号了。get

 

后期生成事件命令行io

我想让程序生成的类库输出到指定的目录下,方便供其余程序引用和访问,保证其余程序引用到的都是最新的类库程序。编译

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

以上代码直接在项目的同级目录生成以项目名+.Output的文件夹,并把bin中的dll复制到里面。class

好了,试试吧,看看是否有版本号和输出到指定目录下?date

相关文章
相关标签/搜索