我正在开发一个侦听单个端口的Windows服务,并根据收到的数据将套接字绑定到相关的Windows服务。目前我们正在托管我们的一些客户,对于我们软件的每个实例,我们都必须分配一个新的端口来监听。
So I read up on Socket.DuplicateAndClose(...)
这正是我在这种情况下所需要的。唯一的问题是我无法弄清楚为什么我不能通过除当前正在运行的PID以外的任何其他PID。
我通过使服务为其管理的每个服务创建AppDomain来解决这个问题,并使用命名管道将SocketInformation
传递给每个服务 - 这非常有用。但我更愿意将服务分开。
任何人都可以帮我这个吗?感谢。