Bueno alomejor estoy llegando algo tarde pero me gustaria saber como evitar la ingenieria inversa en una aplicacion de vb.net
he escuchado sobre pogramas externos a visual studio que hacen este tipo de trabajos pero finalmente los exe codificados con estos programas externos son detectados como virus
tambien he escuchado hablar sobre que es mas dificil decompilar un archivo con el tipo de compilacion que se le da al proyecto si es nativa y la otra no se cual que de cierto hay en esto? gracias
Hasta donde sé, .NET no compila nativo (osea en x86/x64), sinó que genera comandos MSIL que son interpretados por el runtime de .NET.
Por eso es posible obtener el codigo fuente de los .NET con herramientas como Reflector.
Aquí debes tener en cuenta que hasta el mismo Reflector ha sido crackeado (Reflector esta hecho en .NET) y la proteccion del mismo se llama Smart Assembly.
Si las tooles externas que usas te dan positivo con los AVs y la protección que usas no es suficiente, deberías considerar cambiar a algo que compile nativo (hay muchas tooles para este tipo de programas, incluso puedes crear las tuyas) o bien, usar un lenguaje que use otro runtime/vm (y que no sea muy usado).
Saludos!