Und was mache ich wenn weder das eine noch das andere bekannt ist, weil z.B. wieder mal jemand den Rechnernamen oder die
IP des "Servers" geändert hat?
Gibt es sowas wie einen Broadcast, auf den ein Firebird Server antwortet?
PostgresSQL (Opensource und frei) unterstützt "Apple Bonjour" oder "MS-ZeroConf" und kann so über den DNS Server mittels mDNS-Record gefunden werden. Also
IP und Port!
Leider kann
FB das nicht und ich weiß nicht wie einfach sich das von einem Opensource Projekt klauen lässt um es in ein anderes OpenSource projekt einzutragen!
Ich habe mal angedacht einen Konfigurationsserver zu programmieren der per Bonjour erreichbar ist, dieser würde dann allen Clients die Daten Wie Server Port und Sicherungsverzeichnisse, Installationsverzeichnisse &c. beibringen. Der Konfigurationsserver wäre dann per Bonjour auffindbar.
Leider ist das kein kleines Projekt, da man einen Arschvoll Definitionen und so einbinden muss um mit den Bonjour DLLs von Aplle arbeiten zu können.
Es gibt noch eine andere Möglichkeit. Man könnte den Konfigurationsserver UPNP 2 (UPNP1 ist scheiße) unterstützen lassen. Dazu gibts fertige Delphi Beispiele...obwohl UPNP eigentlich noch viel komplizierter ist!
Sollte dir das "Gefunden werden" Feature sehr wichtig sein. Der
MSSQL Server hat das eingebaut weil er dynamische ports unterstützt!
Dazu muss ein Dienst namens "
SQL-Server-Browser" auf dem Server aktiv sein. Und du erhälst eine Liste aller im Netz verfügbaren
SQL-Server instanzen wenn du ein paar mal auf port 1434 eine 2 broadcastest. Das geht auch mit
Indy Componenten. Es gibt hier auch einen Thread dazu...irgendwo hier
http://www.delphipraxis.net/1254297-post14.html