[SOLUCIONADO] Cargando libreria desde memoria y error desconocido

Iniciado por OnTheCore, Diciembre 06, 2013, 07:59:17 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Diciembre 06, 2013, 07:59:17 PM Ultima modificación: Agosto 20, 2014, 08:52:15 PM por Expermicid
Hola gente, estoy tratando de cargar una DLL desde la memoria.

El problema aparece cuando compilo con (GCC) -nostdlib (linkeando las librerias necesarias) y utilizando mainCRTStartup como entry point para reducir el tamaño del ejecutable, funciones innecesarias, etc. Al parecer, al quitar toda esa parte que no me sirve, estoy excuyendo y por eso crashea el programa.
Si compilo normalmente y utilizo main o WinMain el problema no aparece. Funciona todo perfecto

El problema es que al querer obtener un puntero desde una funcion, obtengo un puntero invalido. En la dll puedo verlo correctamente, pero en el programa principal tengo otro valor.

No hace tanto tuve un problema similar al tuyo y pude darle solución con este enlace, suerte lo tenia aun por favoritos : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Sigueme en Twitter : @Sankosk
Estos nuevos staff no tienen puta idea XD

Claro que se te rompe el programa, porque esa función la utiliza la biblioteca en tiempo de ejecución de C para cargar sus propiedades.

Prueba usando este API nada mas que entre a la funcion mainCRTStartup

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Prueba usando este API nada mas que entre a la funcion mainCRTStartup

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No porque no estoy compilando con /GS (Buffer Security Check)

Si no usas ninguna libreria de CRT y no te genera el exe con esas dependencias no te debería de fallar.

Aquí te dejo cuales son dichas librerias:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Realmente deberías usar el punto de entrada habitual, de poco sirve iniciar en CRT y tener que inicializar las librerias tu a mano.

Diciembre 10, 2013, 01:24:20 PM #6 Ultima modificación: Abril 16, 2014, 06:18:53 PM por OnTheCore
Gracias