我有一个使用.Net Framework 4的C#2010 WinForms应用程序。
我正在使用Eazfuscator.NET来混淆这个应用程序。如果我手动模糊可执行文件,一切正常。
当我尝试通过将项目拖到绿色部分上来使程序在每个构建上进行模糊处理时,一切正常并输出:
保护项目'Roster Manager.csproj'...已完成
在发布配置中构建期间,受保护的项目将自动进行模糊处理 请重新启动Visual Studio以完成Eazfuscator.NET的安装
之后,我关闭VS,再次启动它,清理解决方案,重建并运行它。该程序有效,但没有混淆,正如使用Reflector 7反编译所证明的那样。
我正按照程序的要求在Release中构建它。
搜索网络没有帮助,所以如果有人遇到此问题可能会解决此问题。
答案 0 :(得分:3)
Eazfuscator将此行添加到您的项目的PostBuildEvent(Word Wrapped的易读性,但它是一行)。 (右键单击Project - > Properties - > Build Events。)
if /I "$(ConfigurationName)" == "Release" Eazfuscator.NET.exe "$(TargetPath)"
--msbuild-project-path "$(ProjectPath)" --msbuild-project-configuration "$(ConfigurationName)"
--msbuild-project-platform "$(PlatformName)" --msbuild-solution-path
"$(SolutionPath)" -n --newline-flush -v 3.2
检查它是否存在以及您的发布配置是否真的称为“发布”。
答案 1 :(得分:3)
最后设法修复它。似乎禁用用户帐户控制可以解决问题。
快速谷歌搜索将提供有关如何执行此操作的更多详细信息。
答案 2 :(得分:0)
如果您使用的是TFS等版本控制系统,则可能会锁定.csproj文件。 因此,您必须通过检查或取消选中来解锁文件"只读"来自文件属性的框。