![]() |
TIdHttpServer und mehrere Bindings
Hallo,
ich bin dabei ein Programm zu schreiben, welches auf mehreren IP/Port auf Http Anfragen lauschen soll. Dazu würde ich gerne die Indy Komponente TIdHttpServer verwenden. Denke dass mir diese schon eine Menge Arbeit abnimmt. Solange ich nur eine Adresse mit einem Port zuweise klappt es, aber sobald es mehr werden bekomm ich eine Fehlermeldung. ("SocketFehler 10049. Die angeforderte Adresse kann nicht zugewiesen werden.") Mein Code schaut in etwa so aus:
Delphi-Quellcode:
Der Fehler kommt genau dann, wenn ich den Server auf Active = true setze.
if (not Server.Active) then
begin with qryFirma do begin First; while (not Eof) do begin lSocketHandle := Server.Bindings.Add; lSocketHandle.IP := FieldByName('IP').AsString; lSocketHandle.Port := FieldByName('PORT').AsInteger; Next; end; end; Server.Active := true; end else Server.Active := false; Als IP und Ports würde folgendes eingetragen IP: '127.0.0.1' Port: 80 IP: '192.168.1.110' Port: 80 |
Re: TIdHttpServer und mehrere Bindings
Hallo Günter,
hast du vorher geprüft, dass kein anderer Prozess die entsprechenden sockets gebunden hat? Eventuell blockiert ein lokaler HTTP Server den Port 80 auf diesen oder sogar allen Adressen. Grüße vom marabu |
Re: TIdHttpServer und mehrere Bindings
Hallo Marabu!
Das habe ich zwar nicht geprüft, kann es aber ausschließen, da es funktioniert wenn ich jeweils eine der zwei IPs verwende und der Fehler erst dann kommt wenn ich 2 oder mehr eingeben möchte. |
Re: TIdHttpServer und mehrere Bindings
Ich kann deinen Fehler nur reproduzieren, wenn ich meinen HTTP Server hochfahre. Der lauscht auf 0.0.0.0:80 - fahre ich ihn runter, dann kann ich problemlos mehrere Bindings festlegen. (Indy9)
marabu |
Re: TIdHttpServer und mehrere Bindings
Du hast recht.
Ich war mir nur so sicher, dass 192.168.1.110 meine eigene IP-Adresse ist, deswegen dachte ich, dass ich einen zweiten Prozess ausschließen könnte. War nur nicht meine IP. Funktioniert einwandfrei. Dankeschön :) |
Re: TIdHttpServer und mehrere Bindings
Zitat:
das schliesst alle ips ein also deine interne 127.0.0.1 |
Re: TIdHttpServer und mehrere Bindings
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22: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