gpt4 book ai didi

delphi - 如何将 TServerSocket 绑定(bind)到特定 IP 地址

转载 作者:行者123 更新时间:2023-12-03 19:13:43 27 4
gpt4 key购买 nike

有人知道如何绑定(bind) Delphi TServerSocket 组件以仅接受特定本地地址上的请求吗?

服务器有多个IP,但要求服务器应用程序在运行时只能接受一个I​​P上的请求。

最佳答案

TServerSocket 不会直接公开您所要求的功能,但是可以通过一些解决方法来实现。

您需要从 TServerSocket 派生一个新类,才能访问 protected TAbstractSocket.Address 属性。这就是 TServerSocket 绑定(bind)到的值。由于该属性通常无法访问,因此它仍然是一个空字符串,这与绑定(bind)到 0.0.0.0(又名 INADDR_ANY,即所有本地 IP)相同。 p>

一旦您可以访问Address属性,您可以在激活服务器之前将其设置为您想要的任何IP,服务器将进行相应的绑定(bind)。

例如:

type
TServerSocketAccess = class(TServerSocket)
end;

TServerSocketAccess(ServerSocket1).Address := '192.168.0.1';
ServerSocket1.Active := True;

关于delphi - 如何将 TServerSocket 绑定(bind)到特定 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40094158/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com