C# “预先生成事件命令行”和“后期生成事件命令行”
程序员文章站
2022-04-25 18:17:45
概述Visual studio 项目允许在项目属性生成事件一栏中指定预先生成和后期生成事件来实现项目生成与部署的自动化。Microsoft Ref:预生成事件/生成后事件命令行对话框Microsoft Ref: 如何:指定生成事件 (C#)Ref:C# XCOPY命令 “预先生成事件命令行”和“后期... ......
概述
visual studio 项目允许在项目属性生成事件一栏中来实现项目生成与部署的自动化。
microsoft ref:预生成事件/生成后事件命令行对话框
ref:c# xcopy命令 “预先生成事件命令行”和“后期生成事件命令行”
实例
我自己写了一个调试工具,该工具处于一边开发一边使用过程中。实际工作中可能时不时的我会遇到一些新的特性需求想要加到该工具类库中,每次开发到一个稳定版本我会发布到我的部署目录下。我希望我项目生成的文件自动copy到某个特定的部署目录中,因此可以通过制定以下后期生成事件实现:
if $(configuration)==release ( xcopy $(projectdir)$(outdir)*.* c:\seesharp\jxinst\seesharptools\debug\bin\ /y del c:\seesharp\jxinst\seesharptools\debug\bin\*.tmp )
- if $(configuration)==release表示在正式发布版才执行该操作,我不希望在调试过程生成的版本也被发布到部署目录下
- (projectdir)$(outdir)*.* 表示项目输出路径下生成的所有文件
- c:\seesharp\jxinst\seesharptools\debug\bin\ 是我的部署路径
- xcopy复制组文件
xcopy与copy命令类似,也是文件对文件的复制,只是xcopy命令可以将子目录的文件一并复制,copy命令只可以复制某一指定目录下的文件,无法将子目录区一并复制。另外应注意的是,xcopy是外部命令,而copy为内部命令;