Bonjour
Mon application lit des flux RSS et les analyse pour afficher les informations souhaitées et notamment une Image pour laquelle j'ai extrait l'url .
Pour afficher mon image j'utilise le code de la FAQ
Et là migraine sur migraine avec une erreur socket #10061.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 var IdHTTP1:Tidhttp; MyStreamt:TMemoryStream; jp:TJpegImage; begin MyStreamt:=TMemoryStream.Create; { ou tout autre TStream } Try IdHTTP1:=Tidhttp.Create(nil); Try IdHTTP1.Get(Lien_Image,Mystreamt); except ShowMessage('Fichier indisponible'); Exit; End; Mystreamt.Seek(0, soFromBeginning); { on rembobine le stream } jp:=TJpegImage.Create; Try jp.LoadFromStream(MyStreamt); Image1.Picture.Assign(jp); Finally jp.free; End; Finally IdHTTP1.Free; MyStreamt.Free; End; end;
Rien pour m'éclairer sur le site ou sur google.
Un des flux rss fonctionnait parfaitement mais pas le deuxième. Et de plus, l'image s'affichait bien si je passais par un WebBrowser.
Après moult point d'arrêt, tests et autres showmessage, je m'aperçoit que mon erreur provenait de l'absence de :
au début de mon lien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part http://
En passant par IE (WebBrowser) cette absence ne gêne pas, mais Indy est beaucoup moins laxiste. Qui saisit encore cet en-tête dans al barre d'adresse ?
je voulais donc savoir si cela venait d'un "Bug" d'Indy ou d'un choix volontaire dû à des "contraites/obligations" que je ne maitrise absolument pas.
Ma question tient plus la curiosité car j'ai pu corriger l'erreur
Partager