Entwickler-Ecke
Internet / Netzwerk - Einfacher HTML-Server
pmw - Fr 23.05.03 14:58
Titel: Einfacher HTML-Server
Hallo!
Wie kann ich einen einfachen HTML Server programmieren, der bei der Eingabe der IP im Browser eine HTML-Seite anzeigt. Wie kann man das realisieren?
Viele Grüße
Martin Winandy
BungeeBug - Fr 23.05.03 15:57
Hi,
Am einfachsten ist dann wohl das benutzen der Indy-Kompenenten (IdHTTPServ). Der Rest ist dann nur noch Eingenschaftswerte setzten.
MfG BungeeBug
pmw - Fr 23.05.03 16:54
Hallo!
Danke für den Hinweis! Es klappt einwandfrei, wenn ich die Komponente auf ein Form-Blatt setzte. Leider will die Komponente nicht ohne Formblatt arbeiten. :(
Delphi-Quelltext
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:
| program ZeitServer;
uses IdHTTPServer;
{$R *.res}
var HTTPServer: TIdHTTPServer;
begin
HTTPServer := TIdHTTPServer.Create(self); with HTTPServer do begin
Name := 'Server'; Active := True; Bindings.Add; Bindings.Items[0].IP := '0.0.0.0'; Bindings.Items[0].Port := 44; DefaultPort := 44; Greeting.Text.CommaText := '<body><h1>Herzlich Willkommen!</h1>Mein 1. Server ...</body>'; Greeting.TextCode := 'text/html';
end;
end. |
Wie kann ich die Indy-Komponente auch ohne Form-Blatt nutzen?
Viele Grüße
Martin Winandy
BungeeBug - Fr 23.05.03 17:10
dann versuch mal
MfG BungeeBug
pmw - Fr 23.05.03 17:16
Dann stürtzt das Programm leider direkt beim Programmstart ab :(
Edit: Ich habe den Fehler gefunden! Active := True muss an's Ende.
----------------------------
Ich habe jetzt leider ein weiteres Problem: Das Programm beendet sich jetzt immer sosort, wie kann ich das Verhindern?
Geht das vielleicht eleganter als mit:
Delphi-Quelltext
1: 2: 3: 4:
| while 1=1 do begin sleep(10); Application.ProcessMessages; end; |
----------------------------
Noch eine Frage: Wie kann ich auf Eingaben wie z.B.: "127.0.0.1:44/seite1" reagieren?
Viele Grüße
Martin Winandy
pmw - Fr 23.05.03 19:35
@obbschtkuche: Danke für die Antwort!
Damit wären alle außer die letzte Frage geklärt.
| Zitat: |
| Noch eine Frage: Wie kann ich auf Eingaben wie z.B.: "127.0.0.1:44/seite1" reagieren? |
pmw - Mo 26.05.03 19:46
Weiß wirklich keiner weiter? :(
Anonymous - Mo 26.05.03 20:03
Hmmm. Hast du schonmal auf der Indyhomepage geguckt? (müsste in einer HTML-Datei, die bei den Demos dabei ist stehen)
matze - Di 27.05.03 17:07
ich glaube du musst in einem ereignis des browsers das machen.
am besten die Demos bei INDY saugen und guggen !
pmw - Mi 04.06.03 18:36
Hallo!
Ich habe mir die Demos angeschaut, aber leider weiß ich immer noch nicht, wie ich die Prozedur zur Laufzeit zuweisen kann :(
matze - Sa 07.06.03 12:40
dazu musst du die prozedure wie eine ereignisbehandlung deklarieren !
pmw - So 08.06.03 09:53
| Zitat: |
| dazu musst du die prozedure wie eine ereignisbehandlung deklarieren |
Wie mache ich das?
matze - So 15.06.03 13:03
die procedure muss so aussehen:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.blabla(Sender: TObject); begin end; |
die procedure musst du dann noch als public deklarieren. das machst du ganz oben im quelltext unter
public
Delphi-Quelltext
1:
| procedure blabla(Sender: TObject); |
pmw - So 15.06.03 20:03
Ich habe aber keine Forms in meinem Programm. :cry: Deshalb exestiert auch kein TForm1. Geht das auch ohne Formblätter?
matze - Mo 16.06.03 08:22
weiss ich nciht. probiers aus !
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!