What to use dotPeek for?

I've never had the need to decompile other people's code, and don't need to decompile

my own as I already have the source. Is there anything else can I use dotPeek for?


If you don't need to decompile your own code and you don't want to decompile other people's code, and given that dotPeek's sandwich making abilities are very limited, I guess it's not worth the download :)

Seriously though, it can be quite enlightening to decompile System DLLs and see what's going on under the covers.


I also do not need de-compiling others code ...

  1. In rare cases it will be useful when need to have a look at System.Xxx namespace code (for debugging purposes - there are also bugs in System.Xxx of course and in rare cases you'll need to do a workaround)
  2. I am using a re-usable .NET Library written by me (supporting .NET and .NET CF- Desktop, Smartphone, Pocket PC and Windows Phone 7 platform) and I reference only the .DLL (release build) in the projects of course - sometimes (in rare cases) it is useful to debug the code without need to change to project (e.g. including source code or referenceing debug build of the DLL)
  3. If you like to "protect" your source code via Dotfuscator for example it will be nice to see how good that tool works



Thanks for your comments and suggestions. Yes of course, if it can decompile DLLs and stuff like that it might be useful.

As for obfuscation, is there anything that works out there? Makes me think of a certain Chinese company which sells a program to encrypt PDF files. The same company however also sells a program which can decrypt encrypted PDF files. Go figure...


I code in Delphi Prism.  I have used Redgate Reflector in the past to:

1. Taken an existing C# generated assembly and look at in Delphi Prism which I find more readable.
2. Taken a C# example and compile it in VS 2010.  Then open the assembly in Reflector and find out how to do what the example did in Delphi Prism.  Then I could copy/paste parts I wanted.
3. Taken an existing Delphi Prism assembly and convert it to C# code for someone who isn't lucky enough to have Delphi Prism.
4. Navigate around in assemblies made by co-workers in C# to find out how things are done, then sometimes taking the interesting pieces into Delphi Prism.

Now, Delphi Prism also lets me Paste C# into my Delphi Prism code and will convert it to Delphi Prism for me.


Please sign in to leave a comment.