"Repito que ha salido un churro."
Puedes hacer in "cast" en la llamada a la función o mover los
datos;
Código Delphi
[-]
Var
pantalla : String;
longitud : integer;
Begin
captura_pantalla(1,Pchar(pantalla),longitud,0); ........
Var
pantalla : Pchar;
Buffer : Array [0..???] Of char;
longitud : integer;
s : String;
Begin
pantalla := @Buffer;
captura_pantalla(1,pantalla,longitud,0);
Move( buffer , @s[1] , longitud );
SetLength(s, longitud );
SetLength(s, longitud );
s:=buffer;
........