C# isn't a language built around security, redistributing, or optimization to the next level. Seeing as it's ran inside a VM unlike C/C++ which is native code, there is as completely huge difference. No matter what you do, we'll always be able to unpack and decrypt something you do. You can never stop anyone from doing anything. You can attempt to prevent such things but no matter what it will fail. Next, if you need to encrypt an INI, then that INI is useless. If you want to do anything of the sort move to to a resource file and continue on that way. No matter what your solution is you will never have to encrypt a file when using C#, that's just rediculous. Next, to those saying C# is a wonderful language, I want you to know that all C# does is wraps the WinAPI for you. For an example, gaing a process, all you have to do is Process.GetProcessByName() while we have to iterate the proces structure mainly using Process32Next. It's just pathetic that you guys don't know how things work and it's all handed to you on a silver platter. /rage