• Dotfuscator Professional Edition获取代码发布和混淆代码


    1 Dotfuscator Professional Edition 4.9 破解版

    下载地址:http://www.pc0359.cn/downinfo/39815.html

    备份地址:C:D99backups1installSoftwaredotfuscator.rar

    2 选择默认选项安装Dotfuscator Professional Edition 4.9

    这样命令行的位置才是:C:Program Files (x86)PreEmptive SolutionsDotfuscator Professional Edition 4.9dotfuscator

    3 使用命令行,完成获取TFS代码,发布和混淆代码

    Test.xml文件内容如下:

    <?xml version="1.0" encoding="utf-8" standalone="no"?>
    <!DOCTYPE dotfuscator SYSTEM "http://www.preemptive.com/dotfuscator/dtd/dotfuscator_v2.3.dtd">
    <dotfuscator version="2.3">
      <!--This is application generated code. Do not edit manually.-->
      <input>
        <loadpaths />
        <asmlist>
          <inputassembly refid="2187036c-9db0-4255-bff9-6503db4e55c9">
            <option>honoroas</option>
            <option>stripoa</option>
            <option>library</option>
            <option>transformxaml</option>
            <file dir="xxxin" name="xxx.dll" />
          </inputassembly>
          <inputassembly refid="5de30783-0123-4804-ad0d-f5d3cd5d570f">
            <option>honoroas</option>
            <option>stripoa</option>
            <option>library</option>
            <option>transformxaml</option>
            <file dir="xxxin" name="xxx.dll" />
          </inputassembly>
          <inputassembly refid="3c102238-4ba0-4855-84bd-82bc483fa0c9">
            <option>honoroas</option>
            <option>stripoa</option>
            <option>library</option>
            <option>transformxaml</option>
            <file dir="C:Dxxxin" name="xxx.dll" />
          </inputassembly>
        </asmlist>
      </input>
      <output>
        <file dir="${configdir}Dotfuscated" />
      </output>
      <renaming>
        <option>xmlserialization</option>
        <mapping>
          <mapoutput overwrite="true">
            <file dir="${configdir}Dotfuscated" name="Map.xml" />
          </mapoutput>
        </mapping>
        <referencerulelist>
          <referencerule rulekey="{6655B10A-FD58-462d-8D4F-5B1316DFF0FF}" />
          <referencerule rulekey="{229FD6F8-5BCC-427b-8F72-A7A413ECDF1A}" />
          <referencerule rulekey="{2B7E7C8C-A39A-4db8-9DFC-6AFD38509061}" />
          <referencerule rulekey="{494EA3BA-B947-44B5-BEE8-A11CC85AAF9B}" />
          <referencerule rulekey="{89769974-93E9-4e71-8D92-BE70E855ACFC}" />
          <referencerule rulekey="{7D9C8B02-2383-420f-8740-A9760394C2C1}" />
        </referencerulelist>
      </renaming>
      <controlflow level="high" />
      <sos mergeruntime="true">
        <option>dontsendtamper</option>
      </sos>
      <smartobfuscation>
        <smartobfuscationreport verbosity="all" overwrite="false" />
      </smartobfuscation>
    </dotfuscator>

    Test.xml文件可以在dotfuscator的UI中进行操作然后把这个文件保存下来,以后每次都可以用这个文件。

    批处理代码如下:

    @echo off
    REM 声明采用UTF-8编码
    chcp 65001
    
    REM 删除发布文件
    del /s /f /q C:D98publish6Dotfucator1WebApiRelease*.*
    
    REM 删除混淆文件
    del /s /f /q C:D98publish6Dotfucator1WebApiDotfuscated*.*
    
    REM 获取最最新tfs代码
    "C:Program Files (x86)Microsoft Visual Studio 12.0Common7IDE	f" get C:D2tfs_code1teslaSourceCode /login:"用户名","密码" 
    
    REM 发布WebApi文件
    MSBuild C:D2tfs_codexxxSourceCodexxxxxx.csproj /p:Configuration=Release /p:DeployOnBuild=true /p:PublishProfile=C:D2tfs_codexxxSourceCodexxxPropertiesPublishProfilesPublishPub.pubxml /p:VisualStudioVersion=12.0
    
    REM 混淆文件
    "C:Program Files (x86)PreEmptive SolutionsDotfuscator Professional Edition 4.9dotfuscator" /q ".Test.xml"
    
    pause

    其中tfs获取最新代码的时候需要用户名和密码,PublishPub.pubxml是发布的配置文件。将上面的代码保存成一个test_dotfuscator.bat。注意文件路径等需要根据自己的需要进行更改。其中xxx是代指。需要调整为自己项目的路径或者名称.

    4 遇到过的坑

    4.1 只是打开dotfuscator却不执行

    原因是VS2013的dotfuscator是社区版本的,并且没有命令行的方式。所以运行命令只会打开dotfuscator的用户界面。

    Dotfuscator分为两个版本:一个是专业版本:dotfuscator professional edition,一个是:Dotfuscator CE社区版本。

    VS2013自带了一个PreEmptive  Dotfuscator and Analytics Community Edition,是一个社区版本的

    ,并且它只有图形界面的方式dotfuscator.exe,没有命令行dotfuscatorCLI.exe的方式。

    PreEmptive Dotfuscator and Analytics Community Edition 中的 dotfuscator.exe 是打开GUI的界面,只会打开界面不会执行

    PreEmptive  Dotfuscator and Analytics Community Edition 中的 dotfuscatorCLI.exe 是命令行模式。

    安装路径下的截图如下。

    两个版本的区别如下:

    https://www.preemptive.com/products/dotfuscator/compare-editions

    4.2 为了dotfuscatorCLI.exe,重装VS2013自带的dotfuscator

    VS2013是集成dotfucator的,她没有更新也不可以下载,卸载我也没能实现,因为在uninstall里面不知道卸载哪一个?最后直接放弃这种思路。安装了一个破解版本的dotfuscator.

     

    4.3编译报错找不到Newtonsoft.Json.dll

    我以为的原因是,发布之后第三方的dll就不知道从哪里拿?

    实际上的原因是,发布之后,所有的dll都在bin目录下,但是因为同一个dll引用的版本不一样,而发布的同一个dll名称只发布一个,所以就造成有的dll可能没有在发布的bin目录下找到的原因。

    解决方法:

    第一种,把所有的相同的dll都使用同一个版本的dll

    第二种,使用自定义的dll路径,如下图:

  • 相关阅读:
    MySQL的四种事务隔离级别理解(new)
    深入分析ReentrantLock公平锁和非公平锁的区别 (转)
    Ubuntu 安装nginx
    Linux 文件的权限
    java Request 获得用户IP地址
    Maven profile 打包分环境加载不同的资源文件
    JQuery Ajax jsonp
    HttpClient 4.5.3 get和post请求https post
    Jenkins的安装配置
    javascript正则表达式
  • 原文地址:https://www.cnblogs.com/tianxue/p/9460047.html
Copyright © 2020-2023  润新知