批处理 进行svn代码拉取,vs编译,dotfuscator混淆
Dotfuscator的使用:https://www.cnblogs.com/aitong/p/10684004.html
从拉取代码,编译到最后的混淆步骤很多。这时就可以使用批处理来进行自动化。
用到的软件:TortoiseSVN, VS2013 , Dotfuscator Professional Edition,WinRAR
前置条件:提前使用dotfuscator进行一次混淆,并合理存放工程文件,设置混淆前后目录。
在编译之前批处理程序会先删除原先的编译结果,这样在编译出错时会发现文件缺失。
::拉取svn
"D:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:"D:\MySVN\Compile" /closeonend: ::删除文件
set filepath1="D:\MySVN\Compile\MyApp1\OutPut\Release\MyApp1Back.exe"
set filepath2="D:\MySVN\Compile\MyApp1\OutPut\Release\MyApp1Front.exe"
set filepath3="D:\MySVN\Compile\MyApp1\OutPut\Release\MyApp1Basic.dll"
del /q %filepath1%
del /q %filepath2%
del /q %filepath3% ::编译
set vspath="D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe"
set slnpath="D:\MySVN\Compile\MyApp1\MyApp1.sln"
%vspath% /rebuild Release %slnpath% ::复制文件
set outpath1="C:\Users\11320\Desktop\MyApp1混淆\before\MyApp1Back.exe"
set outpath2="C:\Users\11320\Desktop\MyApp1混淆\before\MyApp1Front.exe"
set outpath3="C:\Users\11320\Desktop\MyApp1混淆\before\MyApp1Basic.dll"
copy %filepath1% %outpath1%
@IF %errorlevel%== echo "编译出错,文件不存在。"&goto End
copy %filepath2% %outpath2%
@IF %errorlevel%== echo "编译出错,文件不存在。"&goto End
copy %filepath3% %outpath3%
@IF %errorlevel%== echo "编译出错,文件不存在。"&goto End ::混淆
set dotfuscatorpath="C:\Program Files (x86)\PreEmptive Solutions\Dotfuscator Professional Edition 4.9\dotfuscator"
set xmlpath="C:\Users\11320\Desktop\MyApp1Basic混淆\temp\MyApp1Basic混淆.xml"
%dotfuscatorpath% /v %xmlpath% ::压缩
set pathwinrar="C:\Program Files\WinRAR\WinRAR.exe"
set pathzipfile="C:\Users\11320\Desktop\MyApp1混淆\after\MyApp1.zip"
set afterpath1="C:\Users\11320\Desktop\MyApp1混淆\after\MyApp1Front.exe"
set afterpath2="C:\Users\11320\Desktop\MyApp1混淆\after\MyApp1Basic.dll"
set afterpath3="C:\Users\11320\Desktop\MyApp1混淆\after\MyApp1Back.exe"
%pathwinrar% a -ep1 -o+ -ibck %pathzipfile% %afterpath1%
%pathwinrar% a -ep1 -o+ -ibck %pathzipfile% %afterpath2%
%pathwinrar% a -ep1 -o+ -ibck %pathzipfile% %afterpath3% :End
pause
批处理 进行svn代码拉取,vs编译,dotfuscator混淆的更多相关文章
- 在idea中编写自动拉取、编译、启动springboot项目的shell脚本
idea 开发环境搭建 idea中安装shell开发插件 服务器具备的条件 已经安装 lsof(用于检查端口占用) 已安装 git 安装 maven 有 java 环境 背景 代码提交到仓库后,需要在 ...
- idea配置git,查看git代码&拉取git项目至本地
1.点击file,右键选择setting 选择本地git安装路径 Ps:从git上导入一个全新的maven项目 点击clone按钮后,会弹出如下截图弹窗,点击 NO 项目已经拉取到本地,然后点击ope ...
- SourceTree&Git -01 -代码拉取推送流程 -提交时的相关注意事项
1.进行文件的暂存,忽略不提交的文件 防止自己的文件从仓库拉取时被覆盖掉 2.获取,然后从仓库拉取内容 (勾选被合并提交的内容) 先获取,可以防止冲突的发生 3.推送自己暂存的文件 推送失败,请再次进 ...
- SVN在拉取(更新)代码的时候出现Error:svn: E155037: Previous operation has not finished; run 'cleanup' if it was interrupted问题 ---window版
简易方法1 今天朋友看到朋友报错这个错误,偷偷学习了下他的方法并做记录以防忘记 简易方法2 今天使用svn时报了一个这个错,网上搜索时都说是要使用sqllite来删除svn队列. 其实可以直接使用id ...
- Git使用手册/Git教程:git fetch 将远程仓库的分支及分支最新版本代码拉取到本地
相关文章: 关于验证是否存在ssh配置以及生成SSH Key的方法可以参照文章:Git使用手册:生成SSH Key 关于SSH Key的使用和公钥在gitHub.gitLab的配置等,请参考文章:Gi ...
- 指定某个git的版本代码拉取新的分支
在本地找到一个目录,执行 git clone http://gitlab.xxxxx.com/xxxxx/xxxxx.git cd xxxxx/ git log //找到对应版本的SHA值 例如2b1 ...
- Jenkins教程(三)添加凭据与流水线拉取Git代码
前言 本文旨在配置凭据.使用Git仓库中的Jenkinsfile与使用声明式流水线拉取Git代码 使用SVN等其他版本控制工具,请参考使用Pipeline-Syntax生成对应代码块 凭据(crede ...
- 正确导入svn拉取的工程
为什么要写这篇博文?主要是记录摸着石头过黄河的过程.之前在eclipse装了svn插件,拉取远程工程,在eclipse显示的工程,并不会分开显示模块工程,反而 是以总工程的姿态呈现.或许你觉得不管分模 ...
- 【Git】4、创建代码仓库,HTTP、SSH拉取远端代码
拉取远端代码:使用Git命令下载远程仓库到本地 文章目录 拉取远端代码:使用Git命令下载远程仓库到本地 1.创建远程代码仓库 2.创建仓库 3.进入仓库 4.HTTP(S)获取远程仓库 首次拉取 更 ...
随机推荐
- TCP协议三次握手连接四次握手断开和DOS攻击
转载:http://blog.csdn.net/fw0124/article/details/7452695 TCP连接的状态图 TCP建立连接的三次握手过程,以及关闭连接的四次握手过程 贴一个tel ...
- .NET基础 (04)基础类型和语法
基础类型和语法1 .NET中所有内建类型的基类是什么2 System.Object中包含哪些方法,哪些是虚方法3 值类型和引用类型的区别4 简述装箱和拆箱原理5 C#中是否有全局变量6 struct和 ...
- 设计模式13:Template Method 模板方法模式(行为型模式)
Template Method 模板方法模式(行为型模式) 变与不变 变化——是软件永恒的主题,如何管理变化带来的复杂性?设计模式的艺术性和复杂度就在于如何分析,并发现体系中的变化点和稳定点,并使用特 ...
- 编写高质量代码改善C#程序的157个建议——建议80:用Task代替ThreadPool
建议80:用Task代替ThreadPool ThreadPool相对于Thread来说具有很多优势,但是ThreadPool在使用上却存在一定的不方便.比如: ThreadPool不支持线程的取消. ...
- 【微服务架构】SpringCloud之Hystrix断路器(六)
一:什么是Hystrix 在分布式环境中,许多服务依赖项中的一些将不可避免地失败.Hystrix是一个库,通过添加延迟容差和容错逻辑来帮助您控制这些分布式服务之间的交互.Hystrix通过隔离服务之间 ...
- MySQL如何查看连接数和状态
查看连接数 命令:show processlist 如果要是root账号,能够看见当前所有用户的连接.如果是普通账号,只能看到自己占用的连接数. show processlist只能是列出前100 ...
- tomcat 6.x + log4j日志配置并按天(或大小)生成文件
tomcat日志,默认路径在${catalina.home}/logs目录下,默认使用的是tomcat自己封装的logging工具类,默认配置文件使用的${catalina.home}/conf/ ...
- C#设计模式--工厂模式和抽象工厂模式
话说有三大潮牌公司一直相互PK,有一天举办了一个活动让这三大公司来一个PK,我们来看看哪家公司的上衣做出来好看穿得舒服 现在我们有一个上衣的抽象产品让三大公司来做 //抽象产品 public inte ...
- openedx使用中可能用到的一些资源
这几天一直在弄openedx,你会发现安装好只是第一步,后面还有很多东西在等着你,那么哪里可以看到较新的资料了,分享几个站点: 1.https://readthedocs.org/projects/e ...
- leetcode 有效的数独
判断一个 9x9 的数独是否有效.只需要根据以下规则,验证已经填入的数字是否有效即可. 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. 数字 1-9 在每一个以粗实线分隔的 ...