Ver Mensaje Individual
  #1  
Antiguo 20-07-2006
coletaun coletaun is offline
Miembro
 
Registrado: oct 2004
Posts: 43
Reputación: 0
coletaun Va por buen camino
puntero *pantalla en c++

tengo una funcion de c++ que captura una determinada pantalla de un terminal a traves de un dll externa a la cual la llamo sin problemas y el resto de funciones de la libreria las ejecuta sin problema.
El problema empieza cuando intento capturar en esta tipo de variable los caracteres que aparecen en la pantalla del termina, que es otra aplicacion distinta a la de delphi.

La funcion en c se define asi en la dll:

BOOL WINAPI captura_pantalla(HCLIENT hclient, char *pantalla, int *longitud, int tout);
donde hclient es un manejador, char *pantalla es el buffer donde se van a copiar los datos de la pantalla, *longitud la longitud de los datos a copiar y tiout el tiempo de espera de la respuesta.

esta funcion da un true o false si se ejecuta, pero yo la defino en delphi:

function captura_pantalla(HCLIENT: integer; pantalla: string; longitud: integer; tout: integer ):bool; ¿seria esto correcto?

En principio no me funciona, da false y no captura los datos de la pantalla del terminal y el string está vacio.

¿tal vez *buffer, es un puntero de memoria y lo debo de recorrer?, no se como implementar la funcion de c++ y no se is será correcta la variable buffer como string o deberia de emplear otro tipo de variable. Llevo dos semanas trabado en esto y agradeceria mucho cualquier ayuda o comentario, de verdad, muchas gracias,
Responder Con Cita