In a clear and succinct response, THERE’S NO WAY!
I say this is not possible by the fact that no matter how skilled you are, you will always have someone skilled enough in reverse engineering (or other types, including social engineering) to succeed in breaking their protection. The crack’s are the most real proof about this.
What can be done is to make access difficult, but there is no way to guarantee 100% protection.
But then it means I should leave it the way it is?
That depends on a lot. Sometimes the work you will have to make access difficult may not be feasible by several factors, for example the time and costs to accomplish this task.
But then there’s nothing?
Well, there are some tools, for .net in particular, which helps to carry out that process, which are:
What is your recommendation?
Don’t worry too much about it, because if the person has the ability to understand and use a reverse engineering system and let the code work, often it has the ability to do the same, and sometimes the process can be even faster.
Now, if your problem would be with system misuse, you can use a form of licenses to ensure system usage.
Complements:
As a complement, I have a few questions on the subject, two of them very similar to yours.
Take a look. http://stackoverflow.com/questions/2646707/something-better-than-net-reflector
– PauloHDSousa
@Paulohdsousa, this list is precisely my problem. I want to prevent the code from being seen.
– Robss70
Take a look at the list.
– PauloHDSousa
Okay, I’ll look yes.
– Robss70