Change Log - Version 4.21.0 - Release Date May 3, 2016


  • Support for randomized name assignment. Selecting this Renaming option in conjunction with any renaming scheme will assign new names for types and members randomly instead of sequentially. See the User Guide for more detail.
  • Improved Support for running multiple instances of Dotfuscator concurrently on different projects on the same machine.
  • Packages can now be processed in their unzipped or unpackaged forms, provided all metadata is available. This allows markup to be successfully transformed in MSBuild pipeline scenarios as described in this article on using Dotfuscator with UWP.


  • Satellite assemblies in ClickOnce packages are treated as assemblies, not artifacts, in the new manifest.
  • Fixed an issue where using 'yield break' in conjunction with incremental obfuscation could result in a build error.
  • Fixed missing binding warning when processing XBF files in UWP applications.
  • Fixed BAML obfuscation issue that could cause a runtime error in WPF applications.
  • Improved handling of framework attached properties in XAML that take a UIElement in their backing code.
  • Fixed an issue parsing ILDASM output of Mixed Module Assemblies produced by VS2015 Update 2.
  • Fixed issue where some assemblies were missing a header flag after obfuscation.
  • Fixed an issue that could lead to an Int32 parse error during build.
  • Fixed various other minor bugs.