mi codigo de la dll que llama a otra es este.
main.cpp
/* dllmain.cpp */
#include "dll.h"
#include <windows.h>
#include <cstdlib>
#include <iostream>
/*----------------------------*/
/* llamada dll */
/*----------------------------*/
extern "C" _declspec(dllexport)
int suma_int(int a, int b)
{
typedef int (WINAPI*cfunc1)(int, int);
cfunc1 ConexionDLL1;
int res = 0;
HINSTANCE hLib;
hLib = LoadLibrary("Jmysql2");
if(hLib!=0)
{
ConexionDLL1 = (int (__stdcall *) (int, int)) GetProcAddress(hLib,"suma");
res = ConexionDLL1(a, b);
}
else
{
res = 2;
FreeLibrary(hLib);
}
return res;
}
BOOL APIENTRY DllMain (HINSTANCE hInst /* Library instance handle. */ ,
DWORD reason /* Reason this function is being called. */ ,
LPVOID reserved /* Not used. */ )
{
switch (reason)
{
case DLL_PROCESS_ATTACH:
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}
/* Returns TRUE on success, FALSE on failure */
return TRUE;
}
dll.h
/* dll.h */
#ifndef _DLL_H_
#define _DLL_H_
#if BUILDING_DLL
# define DLLIMPORT __declspec (dllexport)
#else /* Not BUILDING_DLL */
# define DLLIMPORT __declspec (dllimport)
#endif /* Not BUILDING_DLL */
#endif /* _DLL_H_ */
esta dll llama a la funcion suma de la dll "Jmysql2" ( obviamente solo suma, es para probar si me funciona... ) (en load library intente con poner la extensión dll y sin dll, vi codigos de ejemplo con ambas opciones)
al probar el codigo (desde ruby) la funcion suma de "Jmysql2" esta funciona perfectamente, pero mi problema radica mas en el codigo que e puesto aqui arriba donde intento cargar una dll dentro de otra.
p.s: respecto al sitio de msdn, estoy revisando los ejemplos posteados por usuarios. pido perdon, en ningun momento revise ese lugar ...
EDIT:---
tal como dije arriba, no se usar C++ X.x, ayuda por favor...