Einzelnen Beitrag anzeigen

Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#2
  Alt 2. Jul 2003, 18:48
Das ist aus dem "Easy Delphi Helper". Vielleicht hilft dir das ja weiter.

Zitat:
IP-Adresse über den Computernamen herausfinden


Die untenstehende Routine liest die IP-Adresse aus dem Computernamen aus. Der entscheidende Bestandteil ist die Funktion GetHostByName.

Delphi-Quellcode:
Uses
  WinSock;

FUNCTION GetIpAddressByName(const AComputerName: STRING): STRING;
VAR
  TMPResult: STRING;
  WSA: TWSAData;
  H: PHostEnt;
  P: PChar;
BEGIN
  IF WSAStartUp($101, WSA) = 0 THEN
    BEGIN
      GetMem(P,255 + 1);
      StrPCopy(P, ComputerName);
      H:=GetHostByName(P);
      FreeMem(P);
      IF H <> NIL THEN
        BEGIN
          P:=inet_ntoa(PInAddr(H^.h_addr_list^)^);
          TMPResult:=StrPas(P)
        END;
      WSACleanUp;
      IF TMPResult <> 'THEN
        Result:=TMPResult
      ELSE
          Result:= '0';
    END;
END;
Ein Aufruf könnte so aussehen:

Delphi-Quellcode:
Procedure Tform1.Button1Click(Sender: Tobject);
Begin
  Edit2.Text:= GetIpAddressByName(Edit1.Text);
End;
  Mit Zitat antworten Zitat