delphi - 为什么 LoadFromStream 在 TIdHTTP.Get 之后不显示任何内容?

标签 delphi indy

我刚开始遇到 Indy 问题。由于一些奇怪的原因,即使是这个非常基本的过程也不起作用:

procedure TForm1.Button1Click(Sender: TObject);
var ID: TIdHTTP;
    ms: TMemoryStream;
begin
  ID:=TIdHTTP.Create();
  ms:=TMemoryStream.Create;

  ID.HandleRedirects:=true;

  ID.Get('http://www.google.com',ms);
  Memo1.Lines.LoadFromStream(ms);
end;

Memo1 中没有添加任何内容。 SizeOf(ms) 返回 4。

我什至重新安装了 Indy,仍然没有。我的项目以前确实有效,但现在不从任何页面下载任何内容。我想知道,这是什么问题?

最佳答案

试着打电话

MS.Position := 0; 

之前

Memo1.Lines.LoadFromStream(ms);

此外,可以通过像这样调用“Size”属性来找出流的大小

ShowMessage('size of stream = ' + IntToStr(ms.size) + ' bytes');

关于delphi - 为什么 LoadFromStream 在 TIdHTTP.Get 之后不显示任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5598594/

相关文章:

DELPHI:泛型和多态性

windows - 自定义鼠标光标的阴影 (2)

delphi - 为什么我收到 E2356 属性访问器必须是实例字段或方法

delphi - TClientDataSet的当前焦点字段

delphi - Delphi Indy SMTPServer读取多部分消息

delphi - 在 FMX 中将数据从 TIdTCPClient 发送到 TServerSocket 不适用于 Delphi XE8

delphi - FireMonkey Android 与 TIdHTTPServer 的问题

php - Delphi 7 idHTTP JSON数据空结果

delphi - Ctrl+-(Ctrl+连字符-减号)作为快捷键?

sockets - Windows服务中的Indy UDP Server无法监听