IN THE SPOTLIGHT: MDE to MDB Conversion Service
(also supports: ACCDE to ACCDB, ADE to ADP, etc)
IN THE SPOTLIGHT: vbWatchdog
VBA error handling just got easier...
" vbWatchdog is off the chart. It solves a long standing problem of how to consolidate error handling into one global location and avoid repetitious code within applications. "
- Joe Anderson,
Microsoft Access MVP
Meet Shady, the vbWatchdog mascot watching over your VBA code →
(courtesy of Crystal Long, Microsoft Access MVP)
IN THE SPOTLIGHT: vbMAPI
An Outlook / MAPI code library for VBA, .NET and C# projects
Get emails out to your customers reliably, and without hassle, every single time.
Use vbMAPI alongside Microsoft Outlook to add professional emailing capabilities to your projects.
MDE Source Code Protector v1.00: http://www.everythingaccess.com/mdeprotector.htm (DEMO available)
Summary of the problem with normal MDE files created by Microsoft® Access:
Normal MDE files created by Access contain extra information that we like to call "compiler junk" - this is redundant information about variable names, data types, constants, UDTs etc that are no longer needed in a fully compiled MDE file.
However, this "compiler junk" makes it much easier to decompile/reverse-engineer the VBA code in an MDE file to a standard that is very close to the original VBA source code (including for example all variable names).
In fact, for those that can prove ownership of their MDE files, we at EverythingAccess.com offer a service for reverse-engineering them including all VBA code. You must be able to prove lawful ownership beyond any doubt for our service - but that is not to say that another company (or utility) won't offer a non-validated conversion service in the future.
But I thought that the VBA source code in MDE files had been stripped out?
Yes, you're quite correct. However, the source code can be re-built with very high accuracy by using the combination of the compiled code and the "compiler junk" which is left behind by Access when creating the MDE file.
So what's the solution?
Well, if you want to better protect your VBA code, then the solution is to remove the extra "compiler junk" from the MDE file completely which makes it much harder and much less desirable to decompile/reverse-engineer the source code. By removing the "compiler junk" does not prevent decompiling/reverse-engineering the VBA code, but it does make it that much harder and the result would be source code that does not look anything like the original source code (and therefore much less understandable).
This article shows you how to make use of the utility MDE Source Code Protector by EverythingAccess.com to remove this "compiler junk" safely from an MDE file.
STAGE 1: Open utility and load the MDE file
If you haven't done so already, please install the software from here: http://www.everythingaccess.com/mdeprotector.htm
Once installed, open the MDE Source Code Protector from the Start menu. The first thing you need to do is load your MDE file into the MDE Source Code Protector (you may type the full path to the .MDE file, or use the Folder icon to select it in the GUI).
Note: A copy is taken of the MDE file in order to ensure you always have a backup available in case anything goes wrong.
Next, click the button and the file will start to load. This may take a few moments.
STAGE 2: View the 'compiler junk' that is being exposed
Once loaded, the MDE Source Code Protector now gives you a summary of what redundant information is being exposed in your MDE file. There is a simple summary at the top:
And more details available on a per module basis below:
Note: This screen is meant as a guide only - it gives you an idea of what is being exposed in your MDE file without showing actual values of constants etc (as this would pose a security risk for many developers).
Click the button to continue.
STAGE 3: Generate a new MDE file, removing the 'compiler junk'.
Now that you've viewed the vulnerabilities posed by the "compiler junk", you can now remove it.
Note: In order to remove the compiler junk, you will require to purchase a licence for the utility. Click here to purchase now
Note: Under normal circumstances you will have no need to change any of the options on this screen.
To generate the new MDE file, press the button. After the processing has completed, you can now view the vulnerabilities exposed by your newly created MDE file (it will automatically be loaded):
As you can see, the "compiler junk" has now been removed, and your MDE file is now much better protected against decompilation / reverse-engineering.
The MDE Source Code Protector is a relatively new product - if you find any bugs or experience any problems, please contact our support team by e-mail. Contact Us
*Microsoft Access is a trademark of Microsoft Corporation in the United States and other countries*
IMPORTANT: This document may not be reproduced in part or whole without prior consent from the author.
Have your say - comment on this article.
What did you think of 'Protect the VBA source code in your MDE files'?
No comments yet.
Why not be the first to comment on this article?!
Have your say...