gpt4 book ai didi

Delphi 网络共享与多个网络适配器

转载 作者:行者123 更新时间:2023-12-03 15:49:46 24 4
gpt4 key购买 nike

我使用 Delphi 应用程序已经有一段时间了,我发现它似乎是一个错误。尝试在具有多个接口(interface)(VirtualBox 或 VMware 适配器)的两台电脑上连接同一网络中的两个应用程序是行不通的。我尝试在 AutoConnect 或 DiscoverManagers 中使用目标参数,但它们无法配对或连接。似乎 TTetheringManager 中的适配器绑定(bind)到不正确的网络适配器,客户端不可能发现此管理器。有任何想法吗?。我正在使用 Delphi Seattle。

最佳答案

我知道这不是最好的解决方案,但对我有用。

我在 TTetheringManager 类中创建了一个新属性:

...

private

FServerAddress: string;

...

public

property ServerAddress: string read FServerAddress write FServerAddress;

...

然后,我改了下面的方法:

function TTetheringManagerCommunicationThread.CreateManagerInfo(const AIdentifier, AName, AText,

AConnectionString: string; AVersion: Integer): TTetheringManagerInfo;

begin
Result.ManagerIdentifier := AIdentifier;
Result.ManagerName := AName;
Result.ManagerText := AText;
Result.ConnectionString := AConnectionString;
Result.Version := AVersion;

if (Trim(FAdapter.Manager.FServerAddress) <> '') then
begin
FAdapter.FAdapterConnectionString := Copy(FAdapter.FAdapterConnectionString, Pos('$', FAdapter.FAdapterConnectionString), Length(FAdapter.FAdapterConnectionString));
FAdapter.FAdapterConnectionString := FAdapter.Manager.ServerAddress + FAdapter.FAdapterConnectionString;
end;

Result.Adapter := FAdapter;
end;

因此,我之前设置了属性 ServerAddress 以启用 TetheringManager。

希望对您有所帮助。

关于Delphi 网络共享与多个网络适配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35337898/

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