Change Log - Version 4.5.1005 - Release Date February 16, 2009


Runtime Intelligence:

  • Added the ability to instrument Silverlight 2 applications with Runtime Intelligence.
  • Added the ability to send Runtime Intelligence messages to user defined custom endpoints , including the new Free Runtime Intelligence Portal.
  • Improved usability of the Instrumentation UI by adding attribute search, drag and drop, and cut/paste capabilities.

Shelf Life:

  • Shelf Life warning dates are now optional.
  • Added a "Copy to clipboard" button  to the Shelf Life token generator dialog.
  • Updated Shelf Life Token generator dialog to allow for easier date selection and to support optional warning dates. 
  • Added the ability for Shelf Life to pass warning and expiration dates back to user code.
  • Improved the UI around selection of Shelf Life warning and expiration dates.

Smart Obfuscation/Built-In Rules:

  • Improved Smart Obfuscation analysis of WPF and Silverlight assemblies.
  • Added built-in removal rule for WCF assemblies.
  • Added XML Smart Obfuscation report.
  • Added and expanded built-in renaming rules.
  • Added built-in rule to support exclusion of Crystal Reports objects from renaming.


  • Added support for Authenticode signing output assemblies.
  • Restructured the standalone UI such that Global Options, Build Settings, Build Events, and Signing configuration have moved to the Settings tab.
  • Consolidated report generation options in the UI and moved them to the Settings tab in the standalone UI.  In Visual Studio, they are available on the Dotfuscator project's property page.
  • Added Tools menu to the standalone UI, providing a central location for utilities.
  • Improved the Customer Feedback Program dialog interface.
  • Added the ability to remove only literals from input assemblies (const definitions only).

Resolved Issues Concerning:

  • Resolved issue with multiple tamper attributes on a method.
  • Shelf Life sinks are now always called regardless of warning/expiration status.
  • Improved notification when Shelf Life key file is missing during a build.
  • Improved handling of password protected strong name key containers.
  • Resolved removing a non-existent input assembly from the input assembly interface.
  • Resolved interaction between Feature Stop or Shelf Life messaging and Teardown methods.
  • Improved detection of renaming conflicts with existing managed resources.
  • Resolved NullReferenceException when browsing for a renaming report custom transformation.
  • Smart Obfuscation excludes Delete methods on UIElements.
  • Smart Obfuscation excludes generic event handlers.
  • Smart Obfuscation now detects and excludes WPF load URI's from removal.
  • Resolved issue with custom exclusion rule description not being disabled when rules are deleted.
  • Resolved ArgumentNullException when performing incremental obfuscation with rename references turned on.
  • Resolved NullReferenceException when obfuscating an abstract class with an explicit interface method in non-included assembly.
  • Fixed NullReferenceException when performing removal on a set of inputs containing a mixed mode module.