Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.153 Beiträge
 
Delphi 12 Athens
 
#31

AW: Bild von IP-Webcam auslesen

  Alt 14. Nov 2013, 23:26
Du bekommst im OnError (ErrorMessage) und vorher auch nochmal im OnConnected (ReceivedHeader) den HTTP-Header geliefert, wo du diesen Statuscode auslesen kannst.

Falls ich mich jetzt nicht vertan hab, sähe 'ne Billigvariante für OnError mit ErrorCode=TMJpegClient.eFAILURE so aus:
Delphi-Quellcode:
i := Pos(sLineBreak, ErrorMessage); // bzw. 'HTTP/' statt sLineBreak
i := PosEx(' ', ErrorMessage, i);
StatusCode := Copy(ErrorMessage, i + 1, 3);

StatusCode := Copy(ErrorMessage, PosEx(' ', ErrorMessage, Pos(sLineBreak, ErrorMessage)) + 1, 3);
Ab der zweiten Zeile fängt der Header an und da steht immer in der 1. Zeile der Statuscode.
HTTP/1.1 200 OK (HTTP-Version Leerzeichen StatusCode Leerzeichen StatusTextBisZeilenende)



Bestimmt wäre es möglich diese Fehlernachrichten direkt als TStrings anstatt String an diese Events zu übergeben, dann wäre Auswerten etwas einfacher.
[edit]
Als TStrings hätte es denn Vorteil, daß der RequestHeader immer an der selben Stelle (Index) anfangen könnte, da einzeilne Zeilen Strings auch Zeilenumbrüche enthalten können.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (14. Nov 2013 um 23:37 Uhr)
  Mit Zitat antworten Zitat