VS2008 ClickOnce发布Xenocode混淆的应用

有混淆加密的Dotnet程序实在太无语了,反编译后的代码可读性极高。混淆器算是个门槛了,如何融入ClickOnce,我参考了这个地址。但不知为何,使用Dotfuscator生成的程序无法执行,直接退出。后来找到Xenocode Postbuild,经过手动测试成功。于是考虑与ClickOnce结合。

一样的思路,也是修改项目工程文件末尾的Microsoft.Common.targets部分。

增加内容如下:

    "K:\Crack\DotNetReflector\postbuild.exe" (Xenocode Postbuild绝对路径

    "$(ProjectDir)djcj.postbuild" (提前运行Xenocode Postbuild后的配置文件,保存在项目文件夹内。Xenocode Postbuild用法详后。

    "$(ProjectDir)temp" (创建的临时文件夹,用来保存混淆好的文件

    

    

  

  

    

      

    

  

上面这段Target的意思是在生成之前触发——若配置和平台分别是Release(指定Release可以避免调试的时候开启混淆)和AnyCPU的时候,给一个名叫Obfuscate的属性赋True值。

   (编译之后触发。Target节点与程序中的事件相像

    执行命令+参数

    Copy temp中的项目主程序文件到obj\Release里

    

    

Copy混淆后的自定义程序集到自身的obj\Release和bin\Release里。之所以Copy两次,是因为项目依赖的这个Sys程序集先于本项目编译完成,因此混淆后的程序集要Copy回去。

  


Xenocode Postbuild的配置要点:

1、开始配置前一定生成一次,且不能带上边那些标签的。

2、项目主程序和自制程序集都放到输入中,不要管软件的警告!这些文件的来源都是obj\Release文件夹。

3、预设务必选择ClickOnce;不选择VM虚拟机。

4、选择生成多个程序集;输出目录是项目文件夹里的Temp目录。


带Xenocode混淆的ClickOnce发布注意事项:

1、无论是生成还是发布之前务必清理一次项目。

你可能感兴趣的:(DotNET)