Ver Mensaje Individual
  #3  
Antiguo 23-10-2020
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.234
Reputación: 20
ElKurgan Va camino a la fama
Hola.

Creo que el problema te lo da la asignación de la foto.

En el Web Service viene definida como Base64, efectivamente:

<xs:element minOccurs="0" name="_foto" nillable="true" type="xs:base64Binary"/>

Por otro lado, estás asignando al Stream un array de bytes, y ese es el error que te devuelve Delphi:

[dcc32 Error] uMain.pas(73): E2010 Incompatible types: 'TStream' and 'System.TArray<System.Byte>'

Una posible solución es usar Indy para transformar el base 64 a Stream como se ve en este ejemplo; Ahí lo que hacen es cargar el base64 en un TStringStream y luego
cargarlo en la imagen de esta forma:

Código Delphi [-]
AStringStream := TStringStream.Create(DecodedBase64);
try
  AStringStream.Position := 0;
  imBase64.Picture.Bitmap.LoadFromStream(AStringStream);
finally
  AStringStream.Free;
end;
Espero que te sirva.

Un saludo
Responder Con Cita