![]() |
JPEG über Socket an Browser senden
Hallo!
Die Suchfunktion hat leider nicht den gewünschten Erfolg gebracht, darum will ich es mal als Frage versuchen. Ich habe einen kleinen WEB-Server. Dieser soll 4-5 Seiten bereitstellen, die im Intranet abgeholt werden können. Das senden einer HTML Seite funktioniert. Nur wenn in der Seite eine Grafik enthalten ist, kommt es zu Problemen. Der Browser empfängt die Seite, fordert die Stylesheet Datei an und empfängt sie problemlos. Dann fordert er die Grafik an. Der Server kann die Datei laden und beginnt sie zu senden. Dann passiert nichts mehr. Ich verwende die folgenden Zeilen zum Senden der Datei.
Delphi-Quellcode:
var lvSize: integer;
lvMemStream: TMemoryStream; ... lvMemStream:= TMemoryStream.Create; try lvMemStream.LoadFromFile(aFileName); lvMemStream.Seek(0, soFromBeginning); lvSize:= lvMemStream.Size; fSocket.SendBuf(lvSize, Sizeof(lvSize)); fSocket.SendStream(lvMemStream); Sleep(100); finally lvMemStream.Free; end; |
AW: JPEG über Socket an Browser senden
Hallo,
sollte bei SendBuf nicht als Parameter der Buffer und die Größe des Buffers stehen? ahh -da überträgst Du "nur" die Größe der Bilddatei. Arbeiten SendBuf und SendStream blockierend? Die Übertragung, ist die nach 100ms fertig? Grüße Klaus |
AW: JPEG über Socket an Browser senden
[del] Sry, nicht richtig gelesen
|
AW: JPEG über Socket an Browser senden
Kann es sein, dass dir komplett der http-Header fehlt?
Du musst in etwa folgendes senden(der erste Teil ist reiner Text mit dem Windows-Zeilenendezeichen (#13#10):
Code:
nach dem Header muss zwingend eine Leerzeile folgen und dann sendest du einfach das Bild (als Stream) hinterher.
HTTP/1.1 200 OK
Server: most important Server written in Delphi Content-Language: de Content-Type: image/jpeg Content-Length: [i]hier Anzahl Bytes des Bildes als Text eintragen[/i] Connection: keep-alive Ich frage mich nur, wie das bisher geklappt hat. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz