JustDecompile Feature Suggestions

Welcome to the Telerik JustDecompile feature suggestion forum. Please vote or submit a feature suggestion. If it is not a product feature request it might be moderated.

Please note this tool is helping Telerik plan ideas and understand how developers use JustDecompile. It may not always represent the actual priority list for the product team.

JustDecompile is a free .NET assembly browser and decompiling tool. Download JustDecompile for free and learn more: http://www.telerik.com/justdecompile

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Add a feature just like in Visual Studio - Go To Definition

    It would be very nice if I could navigate to a definition inside the decompiled code, especially in those cases where i have a class that i more than 1000 lines

    4 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      You have left! (?) (thinking…)
    • Default arguments of struct type does not decompile correctly

      It appears that the tool does not correctly decompile default arguments of value types. When a method uses a default argument where the argument is default(T) and T is a value type then the decompiler sets the default to null which is not valid C# syntax.

      Ex:

      void Foo ( SomeStruct item = default(SomeStruct) ) { }

      produces

      void Foo ( SomeStruct item = null ) { }

      5 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)
        You have left! (?) (thinking…)
      • 3 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)
          You have left! (?) (thinking…)
        • submit incorrect decompilation suggestion

          When JustDecompile doesnt get the code right, add a feature for submitting the IL code block and the wrong decompilation plus the ability to change the decompilation to suggest what probably should have been output for decompile.

          15 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • Adds the ability to save all resources (jpg, gif, etc.) into a single command and not one by one. A sort of Save ALL ...

            Adds the ability to save all resources (jpg, gif, etc.) into a single command and not one by one. A sort of Save ALL ...

            1 vote
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)
              You have left! (?) (thinking…)
            • error generating project ....file because it is not serializable

              The following exceptions occurred while generating project:

              Error while generating project.
              Item named 'picture1.ImageData' of type 'System.IO.PinnedBufferMemoryStream' cannot be added to the resource file because it is not serializable.

              Assembly: NETL, C:\ZDOWNLOADS\NetL_1.3.4.9\bin\NETL.dll
              Version: 2013.2.613.0

              4 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)
                You have left! (?) (thinking…)
              • 1 vote
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                • Cut'n'paste code...is this not already available?

                  My mind is boggled at the possibility that there is not already a way to cut'n'paste decompiled code. I am praying that I simply am too dumb to have already discovered how to do this. If it doesn't already exists as a feature I have no words to describe my thoughts.

                  1 vote
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                  • Fix VB.NET fixed size array dimension declarations (off by one bug).

                    In VB.NET the array declaration parentheses (x) defines the upper bound of the array (with the lower bound being zero), rather than the number of elements (as is the case in C#). The decompiler is not taking this into consideration and actually produces the same value in both versions of code.
                    i.e. in C#
                    byte[] numArray1 = new byte[4]

                    is being decompiled to VB.NET as:
                    Dim numArray1(4) As Byte

                    However, it should be:
                    Dim numArray1(3) As Byte

                    1 vote
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                    • Display unsigned numeric literals as unsigned numbers

                      Display unsigned numeric literals as unsigned values.
                      Example in current version:
                      private static readonly uint maxPrime = -5;
                      ulong[] numArray = new ulong[] { -9100861002699969879L };
                      desired (original source):
                      private static readonly uint maxPrime = 4294967291;
                      ulong[] numArray = new ulong[] { 9345883071009581737ul };

                      5 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                      • If a PDB is present for an assembly and contains source line numbers, mark the decompiled code blocks with the original PDB line numbers.

                        If a PDB file is present for a decompiled assembly, use the PDB information to associate the decompiled code with an original line number. When an exception is thrown and the stack trace shows a line number (and you've lost the code) this would allow you to determine more precisely what is causing the exception.

                        21 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                        • Show Code Contracts statements in decompiled code

                          It would be great to show Code Contracts code in decompiled code. I'm unsure is that possible, but could you investigate please. See the attached picture.

                          http://www17.zippyshare.com/v/26512179/file.html

                          5 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                          • Add Export File As... feature

                            Feature that allow us to save the decompiled code into a file (vb or cs). I think it is an essential feature that should be included.

                            33 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                            • Allow collapsed code to be copied without hidden code.

                              When all code is collapsed, I would like to be able to copy the code as it looks. Like an interface, or header file basically.

                              1 vote
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                              • Add a way to turn off automatic outlining

                                Its frustrating having to constantly expand every single property and method when you want to quickly scan over code. I can see the type structure in the explorer on the right if I want to, make it possible for me to read the code for a type at a glance.

                                2 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                • Decompile Operators

                                  Please decompile operators too.

                                  2 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                  • Adapt the decompile feature to allow for the decompiling of any assembly file a user chooses.

                                    Essentially add functionally that will allow users to decompile any assembly file they choose as to not be limited on which type of .assembly file a user can decompile.

                                    3 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                    • Exporting a project, Decompile properties as P rather than get_P() and set_P(value), indexers as arr[i] rather than arr.get_Item(i)...

                                      It takes a lot of time to fix the decompiled code exported as project because the compiler thinks the decompiled code is incorrect.

                                      1 vote
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                      • Local variables associated to boolean expressions when not needed

                                        Given the code:
                                        DateTime start = DateTime.Today;
                                        DateTIme end = DateTime.Today;
                                        if( !start<=end)
                                        {
                                        ...
                                        }

                                        is decompiled as:

                                        DateTime start = DateTime.Today;
                                        DateTIme end = DateTime.Today;
                                        bool flag = !(dataStart >= dataEnd);
                                        if (flag)
                                        {
                                        ...
                                        }

                                        30 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                        • Set unsafe switch when generating project with unsafe code

                                          Create Project on an assembly with unsafe code doesn't set the project to compiler with /unsafe.

                                          3 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                          • Don't see your idea?

                                          JustDecompile Feature Suggestions

                                          Feedback and Knowledge Base