Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Decompiling VB

Posted on 1999-10-03
Medium Priority
Last Modified: 2012-06-21
What steps are necessary, and who can give me assistance in decompiling a VB program all the way back to source code / plain english?  I am prepared to prove my legal right to decompile the program and pay for the services to achieve same.  Thank you.
Question by:newnewbie
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Author Comment

ID: 2095340
Please contact me as soon as possible.  Thank you.

Accepted Solution

vettranger earned 320 total points
ID: 2095368
If you use the new Search function to search "Decompile", and read every answer, you'll find that there is a great concensus, with a good number of technical explanations attached, that this can't be done.

Back in VB versions 2 or 3, when the code was still interpreted, this was possible. By version four, when it was translated to P-Code, it started to become impossible.

By version 6, VB executables are identical to VC++ executables.

You can use a disassembler, but this isn't going to produce a satisfactory result for you if the objective is to reconstruct the VB source code.

In fact, there are two reasons to make a program into an executable. One is to provide running code better optimized to run fast on the machine, and the other is to protect the original source. There are none of us here who would like people 'decompiling' our executables and then using our source, so we're glad its not possible to do this.

Unfortunately, that means that even in the case where you own the rights to the missing source, you're still out of luck. Prevention of this situation is why I keep a backup CD of my source in a safety deposit box, replaced every few days.

I know you're not going to particularly like this answer, and will want other opinions (which you will get), but they won't have any better news attached.
LVL 15

Expert Comment

ID: 2095392
vettranger is right and, if I knew my hard work could be decompiled by anyone, I would be doing something else.

newnewbie, this question is asked quite often in all the programming areas and the answer is always the same: NO, IMPOSSIBLE.

If you are an Assembly expert, you could disassemble the VB program and rewrite the source from the Assembly sources. But then, if you were an Assembly experts, you wouldn't be making such question.

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.


Expert Comment

ID: 2096284
There's a guy called DMITRI  (He is Dodi's friend. The Creator of the VB3 decompiler) that created a  decompiler for VB5. It does not recreate source code, but you will be able to restore forms, and all the resources from the EXE (forms, code, etc). There is no way to decompile the source code using only a software today. Forms, buttons, frames, etc can be easyle recorver if you take  a closer look at the EXE using a HexEditor.
 His page has been down for a few weeks (same thing with Dodi's page on AOL), so  I know it wont help you, but  here is the URL:
Anyway. I know that Dodi can decompile PCode if you prove him the EXE is yours and of course he will charge for it...
LVL 15

Expert Comment

ID: 2096343
>but you will be able to restore forms, and all the
>resources from the EXE (forms, code, etc).

Well, that's easy stuff. Even I have written an application that does that, and I am no full-time hacker. The application I wrote is called Resource Explorer and can be downloaded from:

It not only gives you full access to all the resources in any Win32 EXE, DLL, OCX, VXD, etc, but it also gives you a list of exported functions, list of imported modules and what functions the file imports from each module.

The only drawback is that the help file is a little outdated.



Author Comment

ID: 2096517
I would like to thank those parties who have provided an answer or made a comment in regard to my original question.  It occurs to me now that additional information which should have been included in my original question is that the program which I need to have decompiled runs in DOS, not under windows.  Will someone please advise if this makes matters better or worse in terms of the possibility of decompiling.  Thank you.
LVL 15

Expert Comment

ID: 2108664
newnewbie, how do you know it is VB application? If you are sure it was written in VB-DOS, I think there is no decompiler.

simonet, nice Resource Explorer. I like this idea:
'You can easily "borrow" any kind of resources from other files and add them to your own applications' :)
LVL 15

Expert Comment

ID: 2109085
Thanks, ameba.

Expert Comment

ID: 6859131
This question was awarded, but never cleared due to the JSP-500 errors of that time.  It was "stuck" against userID -1 versus the intended expert whom you awarded.  This corrects the problem and the expert will now receive these points; points verified.

Please click on your Member Profile and select "View Question History" to navigate through any open or locked questions you may have to update and finalize them.  If you are an EE Pro user, you can also choose Power Search to find all your open questions.

This is the Community Support link, if help is needed, along with the link to All Topics which reflects many TAs recently added.
Thank you,
Moderator @ Experts Exchange

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses

670 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question