FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Hola, ahora mismo estoy trabajando con Delphi 7, he intentando también con Embarcadero 10 lo que me dices pero obtengo los mismos resultados.
Examinando memoria he visto algo curioso que pasa en Delphi 7, en embarcadero ni siquiera tengo ese puntero https://prnt.sc/lg0g0p Si cambio ESP al valor al correcto ya sale el texto correctamente pero desde luego no quiero llegar a tener que escanear y escribir memoria por algo así... Dejo la DLL ya compilada aquí por si alguien quiere echar un ojo sin tener que compilarla https://www7.zippyshare.com/v/Qa6UdBgA/file.html |
#2
|
||||
|
||||
El error está en los parámetros. Mientras en la dll C/C++ la función espera un DWORD64 tu le pasas un integer. Además debes declarar el estilo de paso de parametros C: cdecl
Declárala así:
Saludos. Última edición por escafandra fecha: 08-11-2018 a las 21:28:14. |
#3
|
|||
|
|||
Cita:
Vaya, yo tenia completamente descartado que el primer parametro causara confligtos con el segundo al tratarse de una llamada a una DLL de C++, por eso estaba dándole tantas vueltas a la cabeza, muchas gracias! |
#4
|
||||
|
||||
Precisamente, en el archivo que enlazo en mi otro mensaje se definen la mayoría de tipos de dato atómico de C. Échale un vistazo desde la línea 55.
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|