【发布时间】:2016-11-17 01:03:06
【问题描述】:
我正在尝试使用硬编码的 AName、在 Delphi 10.1 更新 2 上使用 JNI 的一些代码以及 TIdDNSResolver 来执行以下操作:
1) 从设备接口配置中获取设备 DNS 服务器(有效!)
2) 在 DNS 服务器上查找以检索该服务器的域名(失败!)
3) 将 DNS 域附加到硬编码的 AName(尚不存在)
4) 使用 FQDN AName 查找服务器 IP 地址(还没有)
到目前为止,在 Delphi 中使用 JNI 函数我可以获得 DNS 服务器的 IP 地址。当我尝试查找域名时,我失败了。这是我的代码:
dns.Host := s;
dns.WaitingTime := 2048;
dns.QueryType := [qtDName];
dns.Resolve('hard_coded_server_name');
for i := 0 to Pred(dns.QueryResult.Count) do
begin
r := dns.QueryResult[i];
case r.RecType of
qtDName: begin
txt := TTextRecord(r);
Memo1.Lines.AddStrings(txt.Text);
end;
end;
end;
我确定我错误地使用了 TResultRecord,但找不到有关如何正确执行此操作的文档。有人(雷米?)可以解释一下如何做到这一点吗?
谢谢。
【问题讨论】: