Pregunta

Estoy usando Delphi junto con WinHTTP para hacer una solicitud HTTP para descargar algunos archivos de Internet, y puedo hacer la solicitud, pero no sé cómo obtener el Istream del Olevariant que se devuelve desde ResponseStream. He pasado mucho tiempo buscando en Google, pero no puedo entender cómo hacerlo. Esto es lo que he probado:

var
  req: IWinHTTPRequest;
  instream: IStream;
begin
  req := CoWinHTTPRequest.Create;

  req.Open('GET', 'http://google.com', false);
  req.Send('');

  if req.Status <> 200 then
  begin
    ShowMessage('failure'#10 + req.StatusText);

    FreeAndNil(req);

    Application.Terminate;
  end;

  instream := req.ResponseStream as IStream;

  ShowMessage('success');

  FreeAndNil(instream);
  FreeAndNil(req);

end;

Pero recibo el error [DCC Error] main.pas(45): E2015 Operator not applicable to this operand type (La línea 45 es instream := req.ResponseStream as IStream;).

¿Cómo asusto a los istream de un olevariante?

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top