![]() |
Kleiner Webserver mit Feedback?
Moin !
Wenn ich das richtig sehe kommt Delphi 2007 ja mit Indy 10 daher. Und ich habe da seit längerem eine Idee und wollte mal nachfragen ob (und wie) man so etwas realisieren kann. Also, grob beschrieben habe ich folgendes vor: - Webserver in Anwendung integrieren (mittels TIdHTTP ?) damit der User im lokalen Netz bzw. (wenn die Firewall es zulässt) über das Internet seinen Chart ansehen kann. - "auf dem Webserver" eine Seite hinterlegen welche etwas Text enthält und eine Grafik (die wird von unserer Chartkomponente kopiert) - in der Seite einen Button hinterlegen "Refresh" (damit der User eine neue Seite bzw. eine neue Grafik anfordern kann) Nu hät ich da ein paar Fragen zu und vielleicht kann mir da ja jemand ein paar Tips geben ... 1) Ist das so machbar wie beschrieben? 2) Gibt es irgendwo ein Beispielprojekt was grundlegend erstmal die Erstellung eines Webservers mittels Indy zeigt? 3) Wie kriegt man das mit dem Refresh Button hin? Geht das überhaupt mittels Indy? Und kriegt die Anwendung das dann auch mit? |
Re: Kleiner Webserver mit Feedback?
Zitat:
Zitat:
Zitat:
...:cat:... |
Re: Kleiner Webserver mit Feedback?
Moin Daniel,
danke für deine Antwort. Ich bleibe erstmal bei Frage 2 ... Frage 3 kommt danach dran :-D Den einfachen Webserver (also die Demo) habe ich gerade gefunden. Ist im wesentlichen ja nicht mehr als das hier:
Delphi-Quellcode:
Aber wenn ich es kompilieren will kriege ich eine nach dem Start eine Exception:
unit Main;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPServer, IdCustomHTTPServer, IdContext, IdHTTPServer, IdCustomTCPServer; type TForm1 = class(TForm) IdHTTPServer1: TIdHTTPServer; procedure IdHTTPServer1CommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); private public end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); begin AResponseInfo.ContentText := 'Hello World. It is ' + TimeToStr(Time); end; end. Zitat:
Und wenn ich bei mir im Browser ![]() |
Re: Kleiner Webserver mit Feedback?
HI,
so einen Webserver zu erstellen, klappt mit deinem Code wunderbar. Ich hab dazu Indy9 und Delphi7 benutzt. Frage: Hast du deinen Webserver aktiviert (Active := true)? Zitat:
Mach mal noch nen Button und füg folgenden Code ein, während du IdHttpServer1.Activate im OI auf False stellst. Hierbei gehts mir darum, wann genau die Exception kommt.
Delphi-Quellcode:
Bernhard
procedure TForm1.Button1Click(Sender: TObject);
begin IdHTTPServer1.Active := true; end; |
Re: Kleiner Webserver mit Feedback?
Zur Info: Skype setzt sich auch gern mal auf Port 80. Wenn dies die Ursache sein sollte, dann kannst Du in den sog. erweiterten Optionen von Skype angeben, dass Port 80 nicht genutzt werden soll.
|
Re: Kleiner Webserver mit Feedback?
Moin !
Ich habe mir TCPView gesaugt und konnte ziemlich schnell Skype als Übeltäter rausfinden. Daniel hatte da schon ganz Recht. Ich habe daraufhin Skype geschlossen und siehe da ... Zitat:
Das klappt nun also. Ich habe dann den Port im Binding auf 82 gelegt. Und nun bin ich erstmal glücklich mit einem ![]() So nun aber zu Frage 3 weiter ... Zitat:
Also nehm ich mal folgendes Szenario ... Angenommen ich habe da eine kleine Inputbox und einen Send Button. Der Benutzer gibt einen Text ein und drückt Send. Jetzt soll die Anwendung das mitbekommen und der Text wird zur Überschrift des Charts. Geht das? Und wie mach ich das? Vielleicht kann mir das jemand an einem ganz simplen Beispiel zeigen wo man dann die Caption des Server Formulars neu setzt. Das würde mir als Einstieg völlig reichen. Ach ja und noch ne Frage am Rande ... Erzeugt der HTTP Server auch irgend eine Art Logging die ich abgreifen könnte? Also sowas wie - Client xyz connected / disconnected - Connection Error - ... |
Re: Kleiner Webserver mit Feedback?
Zitat:
Wie weit müssen wir denn ausholen? (Die Frage ist nicht böse gemeint.) Was sagen Dir die Stichworte "HTML-Formulare", "HTTP-POST" und "HTTP-GET"? Im Wesentlichen muss Folgendes passieren: Du definierst auf Deiner Webseite mittels HTML ein sog. Formular. Dem verpasst Du einen sog. Absenden-Button, der dann den Browser veranlasst, die eingegebenen Daten an den Server zu senden. Dort wirst Du ein Ereignis haben, das aktiv wird, wenn ein Request kommt. Ich habe diese Komponente jetzt nicht vor mir, aber im Dunstkreis dieses Ereignisses müsste es etwas mit POST oder GET geben. Und da landen dann Deine Daten. |
Re: Kleiner Webserver mit Feedback?
Liste der Anhänge anzeigen (Anzahl: 1)
Moin !
Zitat:
Ich habe in der Zwsichenzeit durch etwas gefunden Quellcode und einem Web Formular schon ein paar neue Ergebnisse. So langsam bin ich da wo ich hin will :-D Aber so ein paar kleine Dinge sind mir noch unklar bzw. funktionieren noch nicht so schön ... Wenn man die Anwendung startet kann man über ![]() Man kann was eintippen (oder auch nicht) und klickt auf Refresh oder absenden. Beide liefern den eigegebenen Kram am Server ab: Zitat:
Eigentlich würde mir reichen, dass man einen Button drückt, und am Server kommt was an wie Button xy gedrückt. Also wie eine Art Submit. Ein Button alleine nutzt aber gonix so ohne OnClick bzw. Type. :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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