我一直使用 indy 9 和 Delphi 7。我现在对它有相当的经验,但想更进一步。我想听多个端口,不知道该怎么做。还有人担心我是否能够在服务器处于活动状态时添加/删除端口。所以这里有几个问题我想知道答案:
- 当服务器已经处于活动状态时,如何向绑定添加新端口?
- 当服务器已经处于活动状态时,如何从绑定中删除端口?
- 当我删除绑定时,Indy 如何/将如何断开客户端与端口的连接?
- defaultPort 属性会发生什么?
谢谢您的回答。
1.如何在服务器已经处于活动状态时向绑定中添加新端口?
2.当服务器已经处于活动状态时,如何从绑定中删除端口?
3.当我删除绑定时,Indy 如何/将如何断开客户端与端口的连接?
所有三个问题都有相同的答案 - 不支持您所要求的(即使在 Indy 10 中也不支持)。您必须先停用服务器,然后才能对其Bindings
集合进行任何更改。如果这不符合您的需要,那么您将不得不为您想要收听的每个 IP/端口对使用单独的服务器组件。这样,您可以根据需要单独激活/停用它们。停用服务器会自动断开与其连接的所有活动客户端。
4.defaultPort 属性会怎样?
该DefaultPort
属性仅用于在向集合中TIdSocketHandle.Port
添加新条目时初始化属性。Bindings
它不用于其他任何事情。