472,353 Members | 1,490 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,353 software developers and data experts.

Reverse Engineering an mde

Just a general question really. I might soon be required to reverse
engineer an mde file and was wondering if anyone had any experiences on the
subject they'd like to share. Having never done this before I was wondering
if there was a "preferred" method, any pitfalls to avoid, that kind of
thing.

Any input greatly appreciated.
Keith.
Nov 13 '05 #1
17 9134


Keith wrote:
Just a general question really. I might soon be required to reverse
engineer an mde file and was wondering if anyone had any experiences on the
subject they'd like to share. Having never done this before I was wondering
if there was a "preferred" method, any pitfalls to avoid, that kind of
thing.


Can't be done, in the strict sense that you cannot recreate an MDB file
directly and view the objects. However, you can deduce the
functionality through observation. If you're lucky, you've got SQL
Server as a backend, so you can set up a trace which will help matters.
Otherwise it's fairly painstaking work, and you may miss some stuff.

Good luck.

Edward
--
The reading group's reading group:
http://www.bookgroup.org.uk

Nov 13 '05 #2
http://www.socrtwo.info/MDE2MDB.htm
http://www.everythingaccess.com/mdeunlocker_faqs.htm#4
http://www.tech-archive.net/Archive/...4-12/0106.html

So it looks like you might be able to get forms and reports. You can get
tables and queries already. But not VBA, which I assume means any CBF as
well as standalone modules.

So you'd have some/lots of work to do, depending on how much VBA there is in
the thing. And of course if there isn't then it's probably a simple
application that you may as well recreate from scratch.

I've opened up mde files in notepad, and you see something that looks a bit
like code, if you could be bothered to work out what it might mean. If the
file was encrypted before it was made into an mde then you can't even see
that.

It all sounds like a ton of work to me. If they've got an app they sort of
like but needs improvements xyz then use that as a high quality prototype.
You've had a lot of the requirements gathering done for you.

Why is it an mde anyway? Have they fallen out with their previous developer
and she won't let them have the mdb? If that's the case I'd be wary. There
may be a good reason they don't have the mdb, but there might not. I often
distribute mde files. Partly cause they're a bit faster and smaller, and
partly just to stop users playing with them. But I'd always give a paying
client and mdb if they asked for one.

Mike

"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in message
news:42**********@glkas0286.greenlnk.net...
Just a general question really. I might soon be required to reverse
engineer an mde file and was wondering if anyone had any experiences on
the subject they'd like to share. Having never done this before I was
wondering if there was a "preferred" method, any pitfalls to avoid, that
kind of thing.

Any input greatly appreciated.
Keith.

Nov 13 '05 #3
Hi Mike, responses embedded ...

"Mike MacSween" <mi***************************@btinternet.com> wrote in
message news:42***********************@news.aaisp.net.uk.. .
http://www.socrtwo.info/MDE2MDB.htm
http://www.everythingaccess.com/mdeunlocker_faqs.htm#4
http://www.tech-archive.net/Archive/...4-12/0106.html

So it looks like you might be able to get forms and reports. You can get
tables and queries already. But not VBA, which I assume means any CBF as
well as standalone modules.

So you'd have some/lots of work to do, depending on how much VBA there is
in the thing. And of course if there isn't then it's probably a simple
application that you may as well recreate from scratch.
I've had a quick look at the db window and there are about 20 VBA modules,
who knows how much code they contained?!

I've opened up mde files in notepad, and you see something that looks a
bit like code, if you could be bothered to work out what it might mean. If
the file was encrypted before it was made into an mde then you can't even
see that.
I didn't know you could do that, maybe it will provide some clues. Thanks
for the tip.

It all sounds like a ton of work to me. If they've got an app they sort of
like but needs improvements xyz then use that as a high quality prototype.
You've had a lot of the requirements gathering done for you.
Agreed.
Why is it an mde anyway? Have they fallen out with their previous
developer and she won't let them have the mdb? If that's the case I'd be
wary. There may be a good reason they don't have the mdb, but there might
not.


The story is that the previous developer has left their company and they
"can't find" the mdb, for whatever reason. I'm just a little afraid that
re-creating this app might be more work than one mere mortal can handle, it
looks quite a complex beastie.

Many thanks for your comments Mike :o)
Nov 13 '05 #4
Hi Keith,

Take a gander at www.qbuilt.com . Gunny used to reckon he
could deconstruct most of an mde.

--
Nick Coe (UK)
Available - Will work for money :-)
http://www.alphacos.co.uk/ AccHelp + pAnimal
http://www.pjandcoe.co.uk/ Online Store

In news:42**********@glkas0286.greenlnk.net,
Keith typed:
Just a general question really. I might soon be required
to
reverse engineer an mde file and was wondering if anyone
had
any experiences on the subject they'd like to share.
Having
never done this before I was wondering if there was a
"preferred" method, any pitfalls to avoid, that kind of
thing.

Any input greatly appreciated.
Keith.

Nov 13 '05 #5
"Nick Coe (UK)" <cl*****************@MASPON.yahooDOTcom> wrote in message
news:42***********************@ptn-nntp-reader03.plus.net...
Hi Keith,

Take a gander at www.qbuilt.com . Gunny used to reckon he could
deconstruct most of an mde.

Thanks Nick, I do remember reading that before. It's the number of
un-openable modules that's scaring me at the moment.
Nov 13 '05 #6
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42**********@glkas0286.greenlnk.net:
<te********@hotmail.com> wrote in message
news:11*********************@g43g2000cwa.googlegro ups.com...

Can't be done, in the strict sense that you cannot recreate an
MDB file directly and view the objects. However, you can deduce
the functionality through observation. If you're lucky, you've
got SQL Server as a backend, so you can set up a trace which will
help matters. Otherwise it's fairly painstaking work, and you may
miss some stuff.

Well I knew it couldn't be done via Access menu items, hence the
question. Are your comments based upon experience, have you ever
been tasked to do this? It's not something I'm looking forward to
and my client may well raise his eyebrows when I give him a
man-hour estimate!


I've built Access apps to replace Delphi and VB apps for which I
didn't have the code (and the code would have done me no good,
either), so one could surely do it with an MDE, as long as you have
a working copy to prototype from.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #7
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42**********@glkas0286.greenlnk.net:
The story is that the previous developer has left their company
and they "can't find" the mdb, for whatever reason. I'm just a
little afraid that re-creating this app might be more work than
one mere mortal can handle, it looks quite a complex beastie.


Have they gone through all their old backups?

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #8
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.86...
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42**********@glkas0286.greenlnk.net:
The story is that the previous developer has left their company
and they "can't find" the mdb, for whatever reason. I'm just a
little afraid that re-creating this app might be more work than
one mere mortal can handle, it looks quite a complex beastie.


Have they gone through all their old backups?

I bet you had a bit of a grin on your face when you wrote that :o)
Nov 13 '05 #9
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42********@glkas0286.greenlnk.net:
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.86...
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42**********@glkas0286.greenlnk.net:
The story is that the previous developer has left their company
and they "can't find" the mdb, for whatever reason. I'm just a
little afraid that re-creating this app might be more work than
one mere mortal can handle, it looks quite a complex beastie.


Have they gone through all their old backups?


I bet you had a bit of a grin on your face when you wrote that :o)


Well, perhaps! I just know perfectly well that any organization that
even pretends to be functioning is going to have *some* backup tapes
lying around, going back who knows how long. They may not be
current, but they are *definitely* worth looking at, particularly if
they can do a catalog search for the filename in the backup
software.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #10
> Thanks Nick, I do remember reading
that before. It's the number of
un-openable modules that's scaring
me at the moment.


Not only are they "unopenable", the original code has been "compiled" to
tokenized state, the comments are gone, and you won't find nice, meaningful
variable names.

The good news is that, via DAO in a separate database (which you'll have to
write yourself), you can extract the properties of the Reports and Forms
which you cannot now open in design view, and use those to construct a new
copy. But you'll have to figure out what code is needed, where it is needed
and write that yourself. Lyle Fairfield has mentioned doing this, but I
don't know if he has posted code somewhere that does it -- maybe he will
respond or you can google for his posts and see if he mentions it.

The other good news is that, if you have some reasonable experience, you may
just be able to execute the .MDE, make some notes, and re-create it. If it
happens that you are more "in tune with the Access way", you may be able to
recreate the functionality with significantly less code than the original
had. It is because experienced Access developers can so often, so simply
recreate an application that deep discussions of security to protect code,
forms, reports, queries, and modules usually turn out to be merely a waste
of time and effort.

Larry Linson
Microsoft Access MVP


Nov 13 '05 #11
"Larry Linson" <bo*****@localhost.not> wrote in
news:eM1se.3154$kj5.1433@trnddc03:
The other good news is that, if you have some reasonable
experience, you may just be able to execute the .MDE, make some
notes, and re-create it. If it happens that you are more "in tune
with the Access way", you may be able to recreate the
functionality with significantly less code than the original had.
It is because experienced Access developers can so often, so
simply recreate an application that deep discussions of security
to protect code, forms, reports, queries, and modules usually turn
out to be merely a waste of time and effort.


The real way to protect your code is to simply make it so
disorganized and confusing that nobody else could possibly figure
out what it does.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #12
"David W. Fenton" <dX********@bway.net.invalid> wrote
The real way to protect your code
is to simply make it so disorganized
and confusing that nobody else could
possibly figure out what it does.


David, it was an accident -- coulda happened to anybody. When I did that
work for you, I didn't do this _on purpose_, honest I didn't. <BIG GRIN>

FMS even had a product to obfuscate code for you in this manner, at one
time -- may still sell it for all I know.

Larry Linson
Microsoft Access MVP
Nov 13 '05 #13
On Thu, 16 Jun 2005 01:34:01 GMT, "David W. Fenton"
<dX********@bway.net.invalid> wrote:
"Larry Linson" <bo*****@localhost.not> wrote in
news:eM1se.3154$kj5.1433@trnddc03:
The other good news is that, if you have some reasonable
experience, you may just be able to execute the .MDE, make some
notes, and re-create it. If it happens that you are more "in tune
with the Access way", you may be able to recreate the
functionality with significantly less code than the original had.
It is because experienced Access developers can so often, so
simply recreate an application that deep discussions of security
to protect code, forms, reports, queries, and modules usually turn
out to be merely a waste of time and effort.


The real way to protect your code is to simply make it so
disorganized and confusing that nobody else could possibly figure
out what it does.


Ah, you mean an Excel VBA program.
Nov 13 '05 #14
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.74...

Have they gone through all their old backups?


I bet you had a bit of a grin on your face when you wrote that :o)


Well, perhaps! I just know perfectly well that any organization that
even pretends to be functioning is going to have *some* backup tapes
lying around, going back who knows how long. They may not be
current, but they are *definitely* worth looking at, particularly if
they can do a catalog search for the filename in the backup
software.

Good point, I will mention it to him, thanks.
Nov 13 '05 #15
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.86...

The real way to protect your code is to simply make it so
disorganized and confusing that nobody else could possibly figure
out what it does.

Ah, so you've seen my modules ;-)
Nov 13 '05 #16
"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in
news:42**********@glkas0286.greenlnk.net:
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.86...

The real way to protect your code is to simply make it so
disorganized and confusing that nobody else could possibly figure
out what it does.


Ah, so you've seen my modules ;-)


No, just worked with my own!

It all *seemed* so clear when I was writing it...

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #17

"Keith" <ke*********@baeAWAYWITHITsystems.com> wrote in message
news:42**********@glkas0286.greenlnk.net...
Just a general question really. I might soon be required to reverse
engineer an mde file and was wondering if anyone had any experiences on
the subject they'd like to share. Having never done this before I was
wondering if there was a "preferred" method, any pitfalls to avoid, that
kind of thing.

Any input greatly appreciated.
Keith.

Nov 13 '05 #18

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Weird-beard | last post by:
Is there a uml reverse engineering tool for php? I am using argo uml, but it only has support for java reverse engineering, I remember that...
8
by: xiao zhang yu | last post by:
me was sorry if this question are present before DotNet, no matter VB.Net or C# all they are compiled to IL, and yes, that IL will totally same...
7
by: Martin | last post by:
Hi, I am trying to reverse engineer some software in C. Ideally I would like to use a free program that would scan for function calls and map the...
6
by: bluekarthik | last post by:
Hi , Hi, has anyone tried reverse engineering a .drv / .dll file ? Plz tell me some techniques to reverse engineer .drv / .dll files !! karthik...
2
by: seash | last post by:
H I developed an windows form application(visual c#), i want to protect it against copying(only licensed should be able to use) and i heard a topic...
3
by: Sérgio Almeida | last post by:
greetings it is possible to use reverse engineering on a .NET Dll? If so, how? TIA Almeida
15
by: Fady Anwar | last post by:
Hi while browsing the net i noticed that there is sites publishing some software that claim that it can decompile .net applications i didn't bleave...
2
by: mary | last post by:
Hi, for my thesis at the university I'm working on a Visual c++ 6.0 source code, to understand better it I need to extract the UML graphics: Class...
6
by: Herby | last post by:
Hi, Im interested in Reverse Engineering C++ source code into a form more comprehensible than the source itself. I want to write a basic one...
7
by: Gui | last post by:
Hi folks, I have unpacked an all-in-one exe produced by InstallShield. I've made the necessary changes and now I'm ready to repack the files. ...
1
by: Kemmylinns12 | last post by:
Blockchain technology has emerged as a transformative force in the business world, offering unprecedented opportunities for innovation and...
0
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was...
0
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...
0
by: Arjunsri | last post by:
I have a Redshift database that I need to use as an import data source. I have configured the DSN connection using the server, port, database, and...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific...
0
by: Matthew3360 | last post by:
Hi, I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web...
0
Oralloy
by: Oralloy | last post by:
Hello Folks, I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA. My problem (spelled failure) is with the...
0
by: Carina712 | last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand....
0
BLUEPANDA
by: BLUEPANDA | last post by:
At BluePanda Dev, we're passionate about building high-quality software and sharing our knowledge with the community. That's why we've created a SaaS...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.