473,320 Members | 2,088 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

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

dcompiling DLLs?

I'm in the position where I may need to update a site that lost its backup
project files. Is there any chance of being able to decompile the DLL files
or is this a case of starting over from scratch?

I'm looking at ".net Reflector" which looks like it will help, as I can view
individual subroutines/classes, but was wondering if there were any other
options I should look at.

-Darrel
Oct 17 '05 #1
11 1614
check out this addin for reflector:

http://www.denisbauer.com/NETTools/F...assembler.aspx

HTH

Ollie Riches

"darrel" <no*****@nowhere.com> wrote in message
news:e0**************@TK2MSFTNGP14.phx.gbl...
I'm in the position where I may need to update a site that lost its backup
project files. Is there any chance of being able to decompile the DLL
files or is this a case of starting over from scratch?

I'm looking at ".net Reflector" which looks like it will help, as I can
view individual subroutines/classes, but was wondering if there were any
other options I should look at.

-Darrel

Oct 17 '05 #2
> check out this addin for reflector:

http://www.denisbauer.com/NETTools/F...assembler.aspx


Thanks, ollie!

-Darrel
Oct 17 '05 #3
"Ollie Riches" <ol**********@phoneanalyser.net> wrote in message
news:OE**************@TK2MSFTNGP12.phx.gbl...
check out this addin for reflector:

http://www.denisbauer.com/NETTools/F...assembler.aspx

HTH

Ollie Riches


Sad... spend months creating a component that takes a hacker 2 minutes
decompile and steal all of your hard work. Now, find a similar utility for
VB5/6.... <bing> Time's up. There is no such component/utility (even after
what.... 13 years? which is great). imo, If you are careless enough to lose
your source, you deserve to start over from scratch.

--
Ken Halter - MS-MVP-VB (visiting from VB6 world) - http://www.vbsight.com
Please keep all discussions in the groups..
Oct 18 '05 #4
Ken Halter <Ken_Halter@Use_Sparingly_Hotmail.com> wrote:
"Ollie Riches" <ol**********@phoneanalyser.net> wrote in message
news:OE**************@TK2MSFTNGP12.phx.gbl...
check out this addin for reflector:

http://www.denisbauer.com/NETTools/F...assembler.aspx


Sad... spend months creating a component that takes a hacker 2 minutes
decompile and steal all of your hard work.


Has anyone got any actual examples of where this has really happened
with .NET? I've seen a lot of people being worried about getting
bitten, but no-one actually *getting* bitten.

See http://www.pobox.com/~skeet/csharp/obfuscation.html for more on my
views on this matter.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Oct 18 '05 #5
"Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om...
Ken Halter <Ken_Halter@Use_Sparingly_Hotmail.com> wrote:
"Ollie Riches" <ol**********@phoneanalyser.net> wrote in message
news:OE**************@TK2MSFTNGP12.phx.gbl...
> check out this addin for reflector:
>
> http://www.denisbauer.com/NETTools/F...assembler.aspx
Sad... spend months creating a component that takes a hacker 2 minutes
decompile and steal all of your hard work.


Has anyone got any actual examples of where this has really happened
with .NET? I've seen a lot of people being worried about getting
bitten, but no-one actually *getting* bitten.


Heck... I haven't seen any companies that use .Net for the kind of stuff we
write around here so that's a bit of a trick question. For that matter, I
haven't seen anything "real" written in .Net at all.
See http://www.pobox.com/~skeet/csharp/obfuscation.html for more on my
views on this matter.
In your "No Software Is Truly Safe" section, you have "how many of your
potential customers do you think want to rip you off". In my case, probably
zero (for now). In a shareware authors case, probably 50%. That's a
shareware author that has to go spend >>at least<< $1500+ for an obfuscator.
Then, they can probably go to another site and find a crack to de-obfuscate
that obfuscator <g> Right here in this group, a few months ago, there was a
guy selling his disassembler/de-obfuscator that supposedly could "crack" any
obfuscator on the market. That's pretty bad. Even if only 1/4 true. Sure,
you can disassemble VB Classic code. What you end up with is raw assembler
language. There is no tool available that would take that assembler code and
"pretty it up" to make it look like VB source.

Your "Decompilation Makes .NET Applications Open Source" isn't a myth I've
heard. The Open Source community has licenses that specify what you can do
with the source you find there. Decompilation has nothing to do with any of
those licenses. If you can simply grab large chunks of code from a
component, re-arrange it a bit to make it look like it's your own work and
resell it, that's not open source, that's stealing hard work that someone
else did. Huge difference.

No customers can steal our source. Since we don't specifically protect any
of our components, if they can figure out the interfaces, they can install
and use our components on their own PCs. As previously mentioned, our
customers most likely have no interest in any of that. When they buy from
us, they're buying a machine that's controlled by a PC. The software is
never "sold separately" and, as long as it works right, the customer never
even opens the folder that contains our software (now to figure out a decent
way of sending 440 volts directly to any hot-dog network admin that wants to
muck with the PCs we ship with the machines, we'd be set <g>)
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too


--
Ken Halter - MS-MVP-VB (visiting from VB6 world) - http://www.vbsight.com
Please keep all discussions in the groups..
Oct 18 '05 #6
Ken Halter <Ken_Halter@Use_Sparingly_Hotmail.com> wrote:
Sad... spend months creating a component that takes a hacker 2 minutes
decompile and steal all of your hard work.
Has anyone got any actual examples of where this has really happened
with .NET? I've seen a lot of people being worried about getting
bitten, but no-one actually *getting* bitten.


Heck... I haven't seen any companies that use .Net for the kind of stuff we
write around here so that's a bit of a trick question. For that matter, I
haven't seen anything "real" written in .Net at all.


Well, there are certainly things out there. The company I work for
(Clearswift) has been shipping software using .NET for longer than I've
been there.
See http://www.pobox.com/~skeet/csharp/obfuscation.html for more on my
views on this matter.


In your "No Software Is Truly Safe" section, you have "how many of your
potential customers do you think want to rip you off". In my case, probably
zero (for now). In a shareware authors case, probably 50%.


How many of those know about decompilers, or would actually have enough
technical information to use one to their advantage? I believe most
people who want to rip off shareware are likely to go to warez sites
rather than get a decompiler - and plenty of native code has been
cracked.
That's a
shareware author that has to go spend >>at least<< $1500+ for an obfuscator.
Then, they can probably go to another site and find a crack to de-obfuscate
that obfuscator <g>
Obfuscators lose information. There's no way of recapturing it.
Right here in this group, a few months ago, there was a
guy selling his disassembler/de-obfuscator that supposedly could "crack" any
obfuscator on the market.
Obfuscators don't generally prevent decompilation - they just mean that
what you get after decompilation is very, very hard to understand.
That's pretty bad. Even if only 1/4 true. Sure,
you can disassemble VB Classic code. What you end up with is raw assembler
language. There is no tool available that would take that assembler code and
"pretty it up" to make it look like VB source.
I suppose that's why commercial games are never cracked, right? They're
generally native code too...
Your "Decompilation Makes .NET Applications Open Source" isn't a myth I've
heard. The Open Source community has licenses that specify what you can do
with the source you find there. Decompilation has nothing to do with any of
those licenses. If you can simply grab large chunks of code from a
component, re-arrange it a bit to make it look like it's your own work and
resell it, that's not open source, that's stealing hard work that someone
else did. Huge difference.
Which is precisely why I call it a myth. It's one I've seen several
times though.
No customers can steal our source. Since we don't specifically protect any
of our components, if they can figure out the interfaces, they can install
and use our components on their own PCs. As previously mentioned, our
customers most likely have no interest in any of that. When they buy from
us, they're buying a machine that's controlled by a PC. The software is
never "sold separately" and, as long as it works right, the customer never
even opens the folder that contains our software (now to figure out a decent
way of sending 440 volts directly to any hot-dog network admin that wants to
muck with the PCs we ship with the machines, we'd be set <g>)


In which case, wouldn't it be nice to get all the advantages .NET
provides?

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Oct 18 '05 #7
"Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om...
No customers can steal our source. Since we don't specifically protect
any
of our components, if they can figure out the interfaces, they can
install
and use our components on their own PCs. As previously mentioned, our
customers most likely have no interest in any of that. When they buy from
us, they're buying a machine that's controlled by a PC. The software is
never "sold separately" and, as long as it works right, the customer
never
even opens the folder that contains our software (now to figure out a
decent
way of sending 440 volts directly to any hot-dog network admin that wants
to
muck with the PCs we ship with the machines, we'd be set <g>)
In which case, wouldn't it be nice to get all the advantages .NET
provides?


If I can zap someone with .Net, I can surely zap them faster in VB6 <g>...
maybe you weren't referring to my "440 volts" comment? <g>

Neither VB6 or Anything.Net can not stop the "hot-dog" admins from loading
screen savers, virus protection and running Windows Update. They tend to
treat the PCs we ship with our tools as "ordinary desktop" PCs, which they
aren't. They control servos, countless devices, multi-million dollar Lambda
Lasers, etc. No one, especially a "hot dog" should touch the "as shipped"
configuration. We have a notice in huge black letters in every owners manual
but that doesn't stop the hot dogs.

If interested.....
http://www.tamsci.com/products/products.html
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too


fwiw, the very reason I'm starting to browse the .Net groups is that I've
finally convinced a few people here that VS2005 just might not be the devils
spawn. I've given up the hope of re-writing all of our components and have
started hoping that we can use a great deal of what we already have. It's
still pretty much "up in the air" though. We'll get one copy and see how it
works out. First of all, I have doubts about performance (if the IDE's any
indication, the entire suite'll end up in the recycle bin).... and doubts
about MSs recent ability to release a stable product (you don't need to poke
around here very long to see VS2003's still _full_ of bugs)

--
Ken Halter - MS-MVP-VB (visiting from VB6 world) - http://www.vbsight.com
Please keep all discussions in the groups..
Oct 18 '05 #8
> "Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om...

In which case, wouldn't it be nice to get all the advantages .NET
provides?


Besides.... I still haven't seen any of these advantages. Surely, the IDE's
not one of them. If it doesn't have an immediate window, or the ability to
set it so it shows a single procedure at a time, it's not much of an IDE
imo. The IDE should be flexible enough to "bend" to my wishes... not the
other way around. Even with those 2 show stoppers (imo), I still haven't
seen evidence of any of these advantages. If one of them is "the end to DLL
Hell", just poke around here and you'll see DLL Hell is no where near dead.
Intellisense in VB5/6 rules the world so that can't be one of these
advantages I keep hearing about. About the only feature that "sticks out" to
me as a true advantage is much better subclassing support "out of the box".
Neither subclassing or DLL Hell is an issue for VB5/6 devs with experience.
Threading maybe? Maybe. The apps we create run fine on a single thread. The
only multithreading I do in VB6 is for TCP-IP communications to several
devices at once.

So, who has the links to these advantages? I'll need a list (or at least
one) before I can justify the purchase (not counting the single copy I'll
get for eval)

--
Ken Halter - MS-MVP-VB (visiting from VB6 world) - http://www.vbsight.com
Please keep all discussions in the groups..
Oct 18 '05 #9
Ken Halter <Ken_Halter@Use_Sparingly_Hotmail.com> wrote:
In which case, wouldn't it be nice to get all the advantages .NET
provides?

Besides.... I still haven't seen any of these advantages.


In that case I suspect you haven't used .NET enough.
Surely, the IDE's not one of them. If it doesn't have an immediate
window, or the ability to set it so it shows a single procedure at a
time, it's not much of an IDE imo.
I've never required either of those features of an IDE. I believe VS
2005 has an immediate window - I don't know if it allows you to only
view a single procedure though.
The IDE should be flexible enough to "bend" to my wishes... not the
other way around. Even with those 2 show stoppers (imo), I still haven't
seen evidence of any of these advantages. If one of them is "the end to DLL
Hell", just poke around here and you'll see DLL Hell is no where near dead.
Intellisense in VB5/6 rules the world so that can't be one of these
advantages I keep hearing about. About the only feature that "sticks out" to
me as a true advantage is much better subclassing support "out of the box".
Neither subclassing or DLL Hell is an issue for VB5/6 devs with experience.
Threading maybe? Maybe. The apps we create run fine on a single thread. The
only multithreading I do in VB6 is for TCP-IP communications to several
devices at once.

So, who has the links to these advantages? I'll need a list (or at least
one) before I can justify the purchase (not counting the single copy I'll
get for eval)


1) Proper object orientation
2) Proper thread handling
3) Managed execution ensuring safe memory handling (I don't know
whether or not this is an issue in .NET)
4) A very rich runtime library - and getting richer in 2.0, of course
5) Fast garbage collected memory handling - no need to set things to
Nothing all the time. (I don't know much about VB6's memory
handling, but I've seen a lot of ex-VB developers setting variables
to Nothing everywhere, which suggests it's at least common
practice.)
6) A richer error handling mechanism (proper exceptions)
7) Simple interaction with other managed languages
8) Code access security
9) Support from MS - does your company really want to be using an
unsupported platform from 2008?

Those were just off the top of my head. However, as I've said, I don't
know a lot about VB6, so I suggest you ask the same question in the
VB.NET group if you haven't already done so.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Oct 18 '05 #10
> Sad... spend months creating a component that takes a hacker 2 minutes
decompile and steal all of your hard work.
Why is that sad? And why would you assume people would steal your code?
If you are careless enough to lose your source, you deserve to start over
from scratch.


I agree. Tell that to the person that didn't archive the project for us.

-Darrel
Oct 20 '05 #11
> How many of those know about decompilers, or would actually have enough
technical information to use one to their advantage?


Exactly. Software pirates will pirate software regardless of how much
encryption/obfuscation/licening/lawyers you use.

Comanies need to stop assuming customers are criminals. It's not a good long
term strategy.

-Darrel
Oct 20 '05 #12

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

Similar topics

2
by: Johann Blake | last post by:
I can hardly believe I'm the first one to report this, but having gone through the newsgroup, it appears that way. I would like to open a solution in the VS.NET IDE that consists of multiple...
2
by: Shiraz | last post by:
Hi I just made an installer for an application that uses two external COM dlls. On the surface, everything seems to be running smoothly and the the application runs without any errors. However,...
11
by: Devender Khari | last post by:
Hi Friends, I'm facing a situation as follows, need help on identifying possible issues. There is an MFC application developed in VC6.0, say ABCVC6.exe and another developed in VC.NET, say...
0
by: ZMan | last post by:
Scenario: This is about debugging server side scripts that make calls to middle-tier business DLLs. The server side scripts are legacy ASP 3.0 pages, and the DLLs are managed DLLs...
7
by: Oenone | last post by:
I'm sure there's an obvious way to do this, but I'm missing it so far. I have an ASP.NET application that relies on several DLLs to work. Currently in order to get my site working I have to put...
6
by: Brian Bischof | last post by:
I'm having troubles getting the debugging process to work consistenly for external classes. I got it to work once and then I turned it off. But now I can't get re-enabled. Here is what I'm doing....
0
by: Dave | last post by:
Hello The application I'm building an installer for uses dlls which were developed originally in C. Since the application itself is developed in C#, these dlls were wrapped using SWIG....
7
by: Jeff Lynn | last post by:
Help! I recently upgraded my VS V6 to VS 2005 and was unable to build projects that were perfectly ok under VS V6. Where VS 2005 fails was in the linker resolving external DLLs, which are Open...
3
by: gopal | last post by:
I am developing an application in CSharp - windows forms based, which copies the DLLs both unmanaged and managed DLLs from a shared folder and will overwrite the existing versions of managed &...
10
by: =?Utf-8?B?UmljaGFyZA==?= | last post by:
Hi, I usually deploy my ASP .NET application to the server by publishing, using Visual Studio 2005 publish feature. This creates the Bin folder on the server, with the compiled DLLs. I've...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

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.