Jul 042013
 
Share...Tweet about this on Twitter7Share on Facebook6Share on Google+4Share on StumbleUpon1Share on LinkedIn2Flattr the authorPin on Pinterest0Share on Reddit0Share on Tumblr

In List of Microsoft.NET IL disassemblers post, I have already mentioned one of the Telerik’s (free) products, which is the JustDecompile.
In this post I would like to review JustCode a tool of which Telerik has just released a new version.
Unfortunately, the JustCode is not open source and it is not free, but it offers a great deal of functionality. I particularly like the latest added ability to debug decompiled code, directly within Visual Studio.

Before we start, what is JustCode

Description taken from the Telerik’s web site:

JustCode is a Visual Studio extension that provides on-the-spot .NET code analysis and error checking, smart navigation and refactoring. So you code faster. JustCode is unobtrusive and integrates seamlessly with your natural work-flow. Quick hints, code generation, unit test runner and smart refactoring improve your code on the spot. So you code smarter.

Debug Decompiled Code within Visual Studio

Thanks to JustDecompile integration, JustCode now enables you to debug decompiled source code right inside Visual Studio! This feature goes way beyond the Visual Studio standard capability, allowing you to step into third-party libraries without having the source code available. Plus you can use the handy navigation features of JustCode in the decompiled code.

So, let’s quickly see how does it work:

Disable default Visual Studio settings

In order to enable the JustCode Debug Decompiled code functionality in Visual Studio, go to Tools->Options->Debugging->General and disable both Enable Just My Code and Enable .NET Framework source stepping

VisualStudio_2012_Disable_JustMyCode

Decompile code

With only one click JustCode enables that one of the referenced assemblies in the solution is decompiled, as show in the picture.
DecompileForDebugging

When clicking on “Just Decompile for Debugging…” a new window (Assembly Browser) will appear and show the decompiled assemblies, or the ones that are available to be decompiled.

AssemblyBrowser

After this, we are ready to debug the decompiled code, as we would do normally with our own written code.

In the below example, I am able to browse the creation of a new DataColumn, which is implemented inside System.Data.dll

JustCode _ Debugging

Disable the functionality

By selecting the “Clear cache” from the Assembly Browser window, browsing the code will be disabled.
JustCode_ClearCache

Final Thoughts

I’ve shown how it’s easy to decompile and debug code by enabling this functionality with few mouse clicks. I believe this is a great feature and once available will easy the task of understanding the implementation of third party assemblies.

Share...Tweet about this on Twitter7Share on Facebook6Share on Google+4Share on StumbleUpon1Share on LinkedIn2Flattr the authorPin on Pinterest0Share on Reddit0Share on Tumblr

My name is Zoran Maksimovic a Software Developer and Solution Architect. I'm interested in Software Development, Object-Oriented Design and Software Architecture all this especially bound to the Microsoft.NET platform. Feel free to contact me or know more in the about section

  2 Responses to “Debug Decompiled Code within Visual Studio with Telerik’s JustCode”

  1. I would like to know if it is possible to debug third party assemblies which don’t come with PDB files. Is that possible? If it is then I can buy it. Thanks.

Leave a Reply

faverograce@mailxu.com