• 巧用项目生成事件属性自动打包


    .net项目有两个生成事件:预先生成事件和后期生成事件。如下截图:

    2011-03-29_213406

    在这两个事件中我们可以实现我们的一些与编译相关的需求,比如编译完成后将某些文件打包并传输到发布服务器上等。

    这里要介绍的一个应用案例如下:我们发布Job的流程是将Debug或Release重命名为Bin,然后将Bin目录和App.config

    压缩成zip包。

    第一步:在预先生成事件中清除上次打包的文件和目录(如果有的话),包括删除文件夹$(ProjectDir)bin\bin,

    删除文件$(ProjectDir)bin\app.config,删除文件$(ProjectDir)bin\Jobs.zip。代码如下:

       1: if exist $(ProjectDir)bin\bin rd /S /Q $(ProjectDir)bin\bin
       2: if exist $(ProjectDir)bin\app.config del $(ProjectDir)bin\app.config
       3: if exist $(ProjectDir)bin\Jobs.zip del $(ProjectDir)bin\Jobs.zip

    第二步:在后期生成事件中创建文件夹$(ProjectDir)bin\bin,拷贝生成输出到文件夹$(ProjectDir)bin\bin,拷贝文件

    $(ProjectDir)app.config到文件夹$(ProjectDir)bin\bin,如果存在7z.exe那么就将文件夹$(ProjectDir)bin\bin和文件

    $(ProjectDir)bin\bin\app.config压缩成zip文件$(ProjectDir)bin\Jobs.zip。代码如下:

     1: mkdir $(ProjectDir)bin\bin
       2: xcopy /E /Y $(TargetDir)*.* $(ProjectDir)bin\bin
       3: copy /Y $(ProjectDir)app.config $(ProjectDir)bin
       4: if exist "%ProgramFiles%\7-Zip\7z.exe" (
       5: "%ProgramFiles%\7-Zip\7z.exe"  a -r $(ProjectDir)bin\Jobs.zip $(ProjectDir)bin\bin $(ProjectDir)bin\app.config
       6: )
    

    输出示例:

    2011-03-29_231214

    搞定。哎呀,动动脑筋,总有好办法解决问题的。这样,就不用再手动重复的重命名文件夹,压缩文件了。

    http://www.cnblogs.com/fuhongwei041/archive/2011/03/30/1999392.html

  • 相关阅读:
    网络流24题总结和题解
    NOIP复习之1 数学数论
    BZOJ3301 P2524 UVA11525 算法解释康托展开
    线段树与树状数组的综合运用
    P2261 bzoj1257 [CQOI2007]余数求和
    BZOJ 1968_P1403 [AHOI2005]约数研究--p2260bzoj2956-模积和∑----信息学中的数论分块
    P1064 金明的预算方案
    洛谷p1002 过河卒
    Luogu P3014 [USACO11FEB]牛线Cow Line
    Luogu P3927 SAC E#1
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/1999433.html
Copyright © 2020-2023  润新知