Buenas a todos.
Tengo una problemilla con un trozo de codigo que intento implementar en una aplicacion que estoy haciendo.
La aplicacion esta en c#, el codigo que intento hacer andar es el siguiente:

Código: Seleccionar todo

[DllImport("kernel32.dll", CharSet = CharSet.Auto)]
        public static extern IntPtr GetModuleHandle(string lpModuleName);
        [DllImport("kernel32.dll", SetLastError = true)]
        static extern bool VirtualProtect(IntPtr lpAddress, uint dwSize, uint flNewProtect, out uint lpflOldProtect);
        [DllImport("Kernel32.dll", EntryPoint = "RtlZeroMemory", SetLastError = false)]
        static extern void ZeroMemory(IntPtr dest, IntPtr size);

        static public void ErasePE()
        {
            UInt32 size = 0;
            IntPtr BaseAddr = GetModuleHandle(null);
            VirtualProtect(BaseAddr, 4096, 0x04, out size);
            ZeroMemory(BaseAddr, (IntPtr)4096);
        }
El codigo no lo he escrito yo... No manejo muy bien la manipulacion del PE.
El codigo en cuestion, esta echo para saltar los programas que dumpean los ejecutables y facilitan el ser crackeados (para sacar themida por ejemplo).
Cuando inicio la aplicacion crashea, da un error y tengo que cerrarla.
Alguien sabe como implementar dicho codigo ?¿
Muchas gracias de antemano
Blau escribió:¿Podrías poner qué error te da? Una imagen o algo.
Muchas gracias por tu rapida respuesta.
Si compilo desde visual studio me da el siguiente error: [Enlace externo eliminado para invitados]

Si ejecuto la aplicacion me aparece lo siguiente: [Enlace externo eliminado para invitados]

He probado a implementar dicho codigo en una aplicacion nueva, y no me lanza el error, pero queda inutil completamente y al pulsar en cualquier boton la aplicacion deja de funcionar.
Si ejecuto dicho codigo en el public Form (debajo de InitializeComponent ) simplemente aparece un error de que la aplicacion ha dejado de funcionar.
Nuevamente muchas gracias
Responder

Volver a “VB/.NET”