批处理 进行svn代码拉取,vs编译,dotfuscator混淆,winrar压缩
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:1 ::删除文件 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%==1 echo "编译出错,文件不存在。"&goto End copy %filepath2% %outpath2% @IF %errorlevel%==1 echo "编译出错,文件不存在。"&goto End copy %filepath3% %outpath3% @IF %errorlevel%==1 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