Hi,
für eine
IPC Speziallösung die ich mir geschrieben habe verwende ich den Indy10 TCPServer.
Zum Test hab ich den einfach mal auf 127.0.0.1:5000 gebunden.
Das Programm dass diesen Server aber startet, kann zwar pro Windows-User nur einmal gestartet werden, auf einem Terminal-Server können aber mehrere Instanzen laufen.
Also hab ich mir überlegt, einfach bei Windows oder den
Indy Komponenten "abzufragen", welcher Port noch frei ist, so dass ich die Vergabe dynamisch machen kann. Den Port schreib ich dann in die Windows-Registry unter HKEY_CURRENT_USER. Die Routinen, die dann auf den
IPC Dienst zugreifen müssen, holen sich den Port dort raus.
Gibt es eine Art getRandomFreeTCPPort() Funktion oder bleibt mir nur übrig mit try/except so lange einen Port Range durchzuprobieren bis es klappt?