使用VS2013自带的PreEmptive Dotfuscator and Analytis来混淆C#代码
1. 使用VS2013编译你要打包的程序,会在文件夹中的 ..\bin\Release中
2. 点击VS2013中的TOOLS -> PreEmptive Dotfuscator and Analytics :
打开的界面如下图:
3. 选择需要混淆的文件,一般只需要混淆 *.Dll 或 *.exe文件,
点击界面中的 Inputs -> Inputs框下的 + 号 -> 在你程序中的Release文件夹中选择需要混淆的文件
4. 为了方便下次混淆,建议勾上覆盖已存在的文件,如下图:
5. 然后保存文件
6. 进行混淆,点击保存按钮 右边的 绿色三角形按键 进行混淆
当现实的结果最后出现 百分百数字时,就表示已经混淆完毕了
7. 特别注意:
7.1. 如果运行混淆后的代码出现以下错误,然后程序崩溃:
7.1.1. 原因之一:程序缺少组件
因为混淆时只是对Release文件夹中的*.dll , *.exe进行混淆,所以可能会导致部分文件没有拷贝到最终的文件夹中,
解决的方法,对比Release文件夹与混淆后的文件夹,查看是否有哪些文件没有从Release中拷贝到混淆后的目标目录中
7.1.2. 原因之二:程序中存在x86, x64的区分
7.2. 混淆后程序能够运行,但有些节目中的数据没有初始化
则需要考虑程序中是否有一些公用类没有加上public修饰符,而只是使用了默认的修饰符,导致程序不能正常初始化