Dotfuscator Questions

  • Thread starter Thread starter Tom Bean
  • Start date Start date
T

Tom Bean

I am using Dotfuscator Community Edition to obfuscate an application for
Pocket PC. When I made the first pass with Dotfuscator, the app threw a
MissingManifestResourceException. Of course, since the app has been
obfuscated, the only information I got about what caused the error pointed
to resource aq.

The Dotfuscator listing window had WARNINGs about all the forms in my app,
so I excluded them on the 'Rename' tab and reran Dotfuscator. This time the
app came up and ran on the Pocket PC, however, I noticed some custom
controls did not behave correctly. I continued to exclude controls and
methods in the controls until I got the app to run on a device running
Pocket PC 2002. When I tried the app on a device running Pocket PC 2003,
more of the custom controls exhibited problems, so I began the process of
excluding controls and methods again.

The decisions about what to exclude is very hit-and-miss but I am
speculating that to solve the problems, all event handler methods, like
OnPaint(), need to be excluded. Is that correct?

Is there any documentation available about how to decide what to exclude so
Dotfuscator does not break your application?

Thanks,
Tom
 
Tom,

I had the exact same problem with Dotfuscator. I believe a representative
from preemptive has claimed that it works fine with the CF here on the NGs.
Clearly is does not. I have not tried the latest version (lack of time) so
that might do better. However, I was also getting the exceptions you are.
It would be great if preemptive fixed their problems related to this issue.

This is what I expect (at a minimum): I give an obfuscator an EXE with no
reflection, no funny stuff, just a plain old EXE with one or two images, an
icon etc (all contained in the EXE), and the obfuscator should be able to
work just fine.

BTW: Dotfuscator was causing peverify to report errors. Did you try that?

Hilton
 
Its my understanding that only the full version of Dotfuscator supports
..NETCF, the community edition which is bundled with Visual Studio does not.

Peter
 
Peter,

According to a message from Dave Goebel, with Preemptive
(e-mail address removed), on July 9, 2003, Dotfuscator Community Edition works
with CF.

Tom
 
Hilton,

I ran peverify on my app and got the following error: "Unable to
OpenScopeOnMemory for IMetaDataImport:80070003". Is that the kind of error
you were talking about?

Tom
 
Hilton,

Sorry for my previous message, I got that error because I didn't have quotes
around my path so peverify couldn't find my app.

When I got the command line correct, I got this error: "[MD]: Error:
ManifestResource is not marked Public or Private. [token:0x2800000E]".

Is this the error you meant?

Tom
 
I ran Dotfuscator CE on several small CF projects and did not see any
problems. Perhaps the trouble starts with more serious projects
 
Peter Foot said:
Its my understanding that only the full version of Dotfuscator supports
.NETCF, the community edition which is bundled with Visual Studio does
not.
Preemptives's Website (http://www.preemptive.com/dotfuscator/index.html)
says, only the Professional Edition has what they call "Comprehensive
support for the .NET Compact Framework". Maybe the Community Edition has
some kind of support that is not comprehensive?

Marc
 
The following is the text from Dave Goebel's message posted to this
newsgroup on 2003-10-31:

"All versions of Dotfuscator work on the CF. Please go to
www.preemptive.com for more details or call with questions.
-Dave"

Dave Goebel works at Preemptive or at least that's what is indicated by his
e-mail address.

Tom
 
Marc said:
not.
Preemptives's Website (http://www.preemptive.com/dotfuscator/index.html)
says, only the Professional Edition has what they call "Comprehensive
support for the .NET Compact Framework". Maybe the Community Edition has
some kind of support that is not comprehensive?

Per my discussions with Preemptive, "comprehensive" means it does
compression (i.e. makes identifiers smaller, shrinks EXE as a result) -
basically it's a marketing thing, not an engineering thing. Preemptive
claim that the Community Edition works with the CF - clearly it does not.

Yes, Dave Goebel works at Preemptive.

Disclaimer: I have not tried their most recent version.

Hilton
 
Tom said:
Hilton,

Sorry for my previous message, I got that error because I didn't have quotes
around my path so peverify couldn't find my app.

When I got the command line correct, I got this error: "[MD]: Error:
ManifestResource is not marked Public or Private. [token:0x2800000E]".

Is this the error you meant?

It's been a few months, but this looks very similar to what I got; i.e. yes,
it's the same.

So, it's taking peverifiable code and making it non-peverifiable. I'm not
sure that their claim "We're running thousands of classes through
control-flow that won't decompile anymore but run and verify 100%." is
true - at least with the COmmunity Edition on CF.

BTW: IMHO they chose the wrong feature list for the Standard Edition. I
would have bought it if they had chosen the exact opposite of what they did.
:)

Hilton
 
Back
Top