De-Compiling of .NET application made by Elements

Hi,

Normally application developed and compiled with C# or VB.NET can be De-Compile and there is applications which can return any .NET dll or EXE (dll in my case) to VS solution.

Actually this is quit dangerous, because spending days and nights building a robust application and end of the day a person can get it back to it’s source original it drive me crazy and make me think again should I use .NET or stick with Delphi (Native code) where it is not so easy to build a web application and not so flexible as Elements.

So my first question, since Elements is Pascal code, is it protected from De-Compiling, and if not is there any solution to protect my application from De-Compilers.

I thought of building all my business logic in Delphi as web services and use elements as the presentation layer, but this approach will consume a very long process and analysis.

No it doesnt matter what .net language you developed it in because they all get compiled down to an intermediate language. You can obfuscate your code with a tool but that’s just making it harder to read.

You mentioned web services and web application. In this case the code executes on the server side. There is no difference if it is hard or not to decompile a web service because the user actually never sees its assemblies.

Btw for desktop applications there is an interesting side effect with the decompilers - since they are usually developed with MS compilers in mind they are not always able to correctly decompile Elements-built assemblies

1 Like

Just to clarify/add to what antonk said in his second point, regardless of the particular Oxygene capabilities employed in any code, the end result is - and has to be (on .net) - MSIL so of course it should be 100% reversible to C#. Just not C# that might bear any resemblance to the original Oxygene.