![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Se define tal cual "Var longitud:integer"
Código:
function captura_pantalla(HCLIENT: integer; pantalla: Pchar; Var longitud: integer; tout: integer ):bool;
__________________
Because , I have a power. |
|
#2
|
|||
|
|||
|
ok
Os listo lo de la variable longitud.
PEro al definir enla funcion pantalla como pchar, me da el error éste de (acces violation en la dll...) Que otro tipo de variable podria poner?? Es decir ahora pongo pantalla: Pchar; y me da el error, ¿algo como var pantalla: char? para indicarle que es un puntero??? Muchas gracias |
|
#3
|
||||
|
||||
|
¿ Como defines el buffer ? Es decir a donde apunta el puntero "pantalla"
__________________
Because , I have a power. |
|
#4
|
|||
|
|||
|
Definicion De Buffer
Mira en c la funcion me viene definida de esta forma:
* Función para copiar los datos de la pantalla. * * Argumentos: * * 'hclient' * INPUT: Identificador de la sesión. * * 'pantalla' * OUTPUT: buffer donde se van a copiar los datos de la pantalla. * * 'longitud' * INPUT: tama¤o de 'buffer'. * OUTPUT: n£mero de caracteres copiados en 'buffer'. * * 'tout' * INPUT: tiempo en segundos que esperar la respuesta del host si la * sesión est en WAIT. Si es 0 la función retornar inmediatamente. * Si se cumple el tiempo sin haber recibido la respuesta del host, * la función retornar FALSE. * * Retorno: * TRUE Ok, FALSE Error. *-------------------------------------------------------------------------*/ BOOL WINAPI captura_pantalla(HCLIENT hclient, char *pantalla, int *longitud, int tout); ahora mismo la funcion la defino asi: function captura_pantalla(HCLIENT: hclient; pantalla: string; var longitud: integer; tout: integer ):bool;stdcall; external 'funcionexterna.dll' la llamada en el procedimeinto la hago asi: captura_pantalla(1,pantalla,longitud,0); 1 es el manejador de la sesion, es correcto pues en otras funciones utilizo 1 y va correcto. en pantalla no me copia ningun carcter. la longitud me da "0". He probado con 0, tout, con 1, 2 etcc.. y da igual Y la funcion me da false, es decir que no recibe respuesta. Muchas gracias, |
|
#5
|
||||
|
||||
|
Cita:
Me referia a donde apunta el puntero "pantalla", tienes algo asi
__________________
Because , I have a power. |
|
#6
|
|||
|
|||
|
gracias
gracias, la libreria si que se ejecuta pero al mostrar los datos en un string se me cierra el programa
tengo los datos enla variable pantalla que es pchar, como lo paso a un string `para mostrarlo en un memo por ejemplo? De verdad muchas gracias |
|
#7
|
||||
|
||||
|
Puedes hacer in "cast" en la llamada a la función o mover los
datos;
__________________
Because , I have a power. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Puntero de diferentes clases | chavetaz | OOP | 10 | 19-11-2007 15:55:04 |
| Cambiar puntero raton | Esti | Varios | 2 | 23-11-2005 11:42:22 |
| Puntero del raton | Canastera | Gráficos | 2 | 24-06-2005 18:23:07 |
| puntero a imagen | Abaddon | Gráficos | 9 | 16-06-2005 00:17:29 |
| Puntero a Stream | Enan0 | Varios | 3 | 22-03-2005 22:08:13 |
|