![]() |
Indy HTTP Server zeigt keine Bilder an ?
Wenn ich versuche eine Seite mit Bildern aufzurufen zeigt er mir keine Bilder an oder nur die hälfte eines Bildes ! Mime Type ist auch richtig ! Warum will er nicht ?
Habe folgenden Programm Code benutzt bez. geschrieben.
Code:
procedure TForm1.IdHTTPServer1CommandGet(AThread: TIdPeerThread;
ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); Var Stream: TFilestream; begin if ARequestInfo.Document = '/' then begin IF fileexists(DocumentRoot + 'index.html') = true then ARequestInfo.Document := 'index.html'; IF fileexists(DocumentRoot + 'index.htm') = true then ARequestInfo.Document := 'index.htm'; IF fileexists(DocumentRoot + 'index.php') = true then ARequestInfo.Document := 'index.php'; end; Stream := TfileStream.Create(DocumentRoot + ARequestInfo.Document, fmOpenRead or fmShareDenyWrite ); AResponseInfo.ContentStream := Stream; end; |
Re: Indy HTTP Server zeigt keine Bilder an ?
Zeig er dir etwa seiten an, so wie dein Sourse aussieht dürfte dir auch keine html-seite angezeigt werden. Du öffnest zwar eine Datei in einem Stream mit
Delphi-Quellcode:
aber du lieferst nirgends den String zurück an den Client (z.B.: per AResponseInfo.ResponseText)
Stream := TfileStream.Create(DocumentRoot + ARequestInfo.Document, fmOpenRead or fmShareDenyWrite);
desweiteren rufst du nirgends Stream.Free auf. Was bringt es dir eine datei per stream zu öffnen wenn du dann nix damit machst (auslesen, etc.) Anstelle der Code-Tags könntest du auch die "Delphi-Code" Tags verwenden. Außerdem wäre eine ordentliche Formatierung (einrückung) sehr zu empfehlen |
Re: Indy HTTP Server zeigt keine Bilder an ?
sorry hatte ich vergessen zu posten, natürlich schick in den stream mit.
Code:
trotzdem zeigt er mit nur halbe bilder an oder gar keine :-(
AResponseInfo.ContentStream := Stream;
|
Re: Indy HTTP Server zeigt keine Bilder an ?
dann versuche einfach mal den Stream in den ResponseString zu stopfen ob es dann funktioniert, so hab ichs zumindest gemacht bei meinem server und das funktioniert supi
|
Re: Indy HTTP Server zeigt keine Bilder an ?
Jo, gute frage nächste frage würd es gerne probieren bloss hab noch nie ein
filestream in Delphi in ein string gepackt wie macht man das ? |
Re: Indy HTTP Server zeigt keine Bilder an ?
ganz einfach
Delphi-Quellcode:
danach ist in TheString der Inhalt des Streams
setlength(TheString, stream.size);
stream.Read(TheString[1], stream.size); |
Re: Indy HTTP Server zeigt keine Bilder an ?
THX es funktioniert :-) :-D :-D :-D :-D :-D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:57 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