Hallo,
ich bin ein absoluter Delphi Anfänger. Jedoch möchte ich einen Hostnamen zu einer
IP Adresse auflösen.
Dazu habe ich mir
Indy 9.0 auf meine Delphi 7.0PE installiert.
Nun habe ich die
Indy Demo für den DNS Resolver soweit wie möglich gekürzt. Stehe nun vor dem Problem eine Funktion zu entfernen deren Sinn ich nicht verstehe. hir mein Code:
Delphi-Quellcode:
begin
LB_QueryType.ItemIndex := 0;
end;
function TDNS_Main.DNS_Perform_Query(Question:
string;
var Value:
string): integer;
var
DNS : TIdDNSResolver;
//var RR , TResultRecord : string;
function GetDetail(RR : TResultRecord) :
string;
begin
Result := TARecord(RR).IPAddress;
end;
begin
DNS := TIdDNSResolver.Create(self);
// Assign the IP address of the DNS which you want to query
//(NSLOOKUP Command: >server 168.95.1.1)
DNS.Host := '
168.95.1.1';
DNS.QueryRecords := [qtA];
DNS.Active := True;
DNS.Resolve(Question);
Value := '
';
Value := Value + GetDetail(DNS.QueryResult.Items[0]);
//Value := Value + DNS.QueryResult.Items[0];
//Value := Value + TARecord.IPAddress;
Result := 0;
end;
procedure TDNS_Main.Btn_QueryClick(Sender: TObject);
var
Back :
string;
begin
if (DNS_Perform_Query(Ed_Query.Text, Back) = 0 )
then begin
Memo_Result.Lines.Add(Back);
end;
end;
Ich möchte die funktion GetDetail() einsparen weiß nich wirklich was diese macht. Irgndwie Umwandlung
TARecord in String ? Wie kann ich mit diesem Script einfach erreichen, das die
IP in das Memo Feld eingetragen wird ?
Wie lautet der systax um einen tarecord in einen String zu verwandeln ?
Bitte um Hilfe.
MfG
Jens John glawion