tengo este code del .exe en c++
Código:
#include <windows.h>
typedef void(*PF)();
int main()
{
HINSTANCE hDll = LoadLibrary("c:\\carga.dll"); // carga la dll
PF Mensaje = (PF)GetProcAddress(hDll, "inicio"); //obtiene el puntero
Mensaje(); // ejecuta la funcion
FreeLibrary(hDll);
return 0;
}
y este es el code de la dll, q esta hecha en vb6 y exportada :
Código:
Option Explicit
Public Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
Public Function inicio()
MessageBox 0, "me han ejecutado", "holas", 64
inicio = 1
End Function
el .exe carga la dll y sale el mensaje, pero despues de aceptar el mensaje me sale el error : "la memoria 0x0... hace referencia a 0x0......, no se puede read", ¿como podria solucionarlo?, voi a hacer unas dll en vb6 pero se presenta este problema y no se como solucionarlo.