2
votes

I've recently obfuscated a DLL using Dotfuscator CE with Visual Studio 2015 Update 3. Here is the Dotfuscator.xml file I used.

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE dotfuscator SYSTEM "http://www.preemptive.com/dotfuscator/dtd/dotfuscator_v2.3.dtd">
<dotfuscator version="2.3">
  <propertylist>
    <property name="SourceDirectory" value="This Path Will Be Replaced By Visual Studio" />
    <property name="SourceFile" value="This Filename Will Be Replaced By Visual Studio" />
  </propertylist>
  <input>
    <asmlist>
      <inputassembly>
        <option>library</option>
        <file dir="${SourceDirectory}\" name="${SourceFile}" />
      </inputassembly>
    </asmlist>
  </input>
  <output>
    <file dir="${SourceDirectory}\" />
  </output>
</dotfuscator>

Now the problem is, the obfuscated assembly contains some information stored in Settings.settings. file, when my code tries to access data from settings file it fails with this following exception.

The settings property 'ProxyTestURL' was not found

Here is the syntax to read setting:

 Dim strURI As String = My.Settings.ProxyTestURL

I know there is a similar question "Dotfuscator : Error after obfuscation" but it doesn't seems to be either complete or robust, though I put my comments there too but here I would expect a second opinion and more robust solution instead of renaming my settings file literals to obfuscated names(as mentioned there).

1
For anybody looking, the other question he mentions is at stackoverflow.com/questions/17215726/… - Nathan Arthur

1 Answers

1
votes

You should exclude My.Settings from renaming. Instructions for doing so are in the docs.