3

I used Eazfuscator to "protect" my VS project - this means Eazfuscator added a post-build event to my project that looks like this:

if /I "$(ConfigurationName)" == "Release" Eazfuscator.NET.exe [...]

I'm not sure why it's checking the ConfigurationName like that - I'm trying to obfuscate a build where ConfigurationName = ForPlayers so this check is getting in the way.

Two questions:

  • Why does Eazfuscator do this check?
  • Can I make it not not do it? I could manually go into the project properties and remove it, but that's not a good idea because I'm doing this all from a script like this:

.

Eazfuscator.NET.exe --protect-project [...]   # add post-build event
devenv /build [...]                           # build the solution
Eazfuscator.NET.exe --unprotect-project [...] # remove post-build event
Stefan Monov
  • 11,332
  • 10
  • 63
  • 120

2 Answers2

4

This check is probably done so that Eazfuscator does not obfuscate assemblies used for debugging where you may need the pdb files to step through your code, etc.

With Eazfuscator.NET v3 there are improvements made so that you can enable debugging obfuscated assemblies.

You can simply update the post-build event like this:

if /I "$(ConfigurationName)" == "ForPlayers" Eazfuscator.NET.exe [...]
Rami A.
  • 10,302
  • 4
  • 44
  • 87
2

Eazfuscator.NET does the check for Release configuration because this is the most common usage scenario. Most developers do builds in Release when they want to do a release.

Of course you are free to use any configuration name whichever you prefer, just update the post-build event as suggested by Rami A.

ogggre
  • 2,204
  • 1
  • 23
  • 19