i'm totally new to .net especially with c# 3.0 and i'm working on an access database wrapper application because we need to protect the password and content of the database from being directly accessed by a third party developer.
I'm currently testing to write a simple client app to trigger the functions in the dll and to my suprise, everytime i hit a bug i can see all the source codes in this project which shows the exact source code.
So i know i'm probably missing a lot of obvious stuff here, but how do i code it so that this won't happen, so we can hide the code in the dll from the third party developer? Or is this a setting thing which only happens because both projects is in my pc?
thanks :)
After some browsing around, i found this previous discussion on good obfuscation tool and i try this one tool called Eazfuscator.Net and after obfuscating the dll, i try to view it again using .net reflector or debug it via vs express2008, nothing shows no more :)
You're seeing the exact code because the source is on your machine, however, it will be trivial for your third-party developer to reverse engineer the code from the DLL using a tool such as Reflector. To prevent something like this, you may want to use a code obfuscation utility, such as Dotfuscator (you may want the paid version instead of the community version), to make it more difficult to reconstruct the code from the intermediate code.