【发布时间】:2020-01-18 05:04:07
【问题描述】:
我正在尝试从 URL 开始加载 TImage,如 this answer 中所述。
uses
GIFImg;
procedure TForm1.Button1Click(Sender: TObject);
var
Stream : TMemoryStream;
GIF : TGIFImage;
begin
Stream := TMemoryStream.Create;
GIF := TGIFImage.Create;
try
IdHTTP1.Get('http://www.google.com/intl/en_ALL/images/logo.gif', Stream);
//IdHTTP1.Get('https://www.google.com/intl/en_ALL/images/logo.gif', Stream);
Stream.Position := 0;
GIF.LoadFromStream(Stream);
Image1.Picture.Assign(GIF);
finally
FreeAndNil(GIF);
FreeAndNil(Stream);
end;
end;
如果 URL 以简单的 HTTP 开头,则一切正常。
当我尝试从 HTTPS URL 加载时,我收到 EIdIOHandlerPropInvalid 异常消息:
IOHandler 值无效。
我尝试添加一个TIdSSLIOHandlerSocketOpenSSL 并将其设置为IOHandler 用于TIdHTTP 组件。
这样做之后,我收到一个 EIdOSSLCouldNotLoadSSLLibrary 异常,并显示以下消息:
无法加载 SSL 库。
是属性有问题还是有其他问题?
【问题讨论】:
标签: delphi indy delphi-2007