【发布时间】:2023-04-03 00:21:01
【问题描述】:
我有一个 Windows 服务,它打开一个 TCP 端口(一个在给定时刻可用的端口)。现在我需要将客户端连接到该端口。如何让客户端知道服务器在哪个端口上运行?
【问题讨论】:
我有一个 Windows 服务,它打开一个 TCP 端口(一个在给定时刻可用的端口)。现在我需要将客户端连接到该端口。如何让客户端知道服务器在哪个端口上运行?
【问题讨论】:
除非您有某种方法可以通过 Java 程序与服务进行通信,否则这不会那么简单。一种解决方案是尝试解析netstat 命令的输出。有关如何执行此操作的更多详细信息,您可以查看this question
【讨论】:
在一般情况下,如果不让客户端尝试所有端口直到它以某种方式识别服务器,或者通过其他方法进行通信,您将无法真正解决此问题。
最简单的解决方案是在约定的位置(例如临时目录)中就文件名达成一致,并将端口号存储在该文件中。
【讨论】: