Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Es werden nicht alle IP's angezeigt (https://www.delphipraxis.net/8486-es-werden-nicht-alle-ips-angezeigt.html)

Helpliner 5. Sep 2003 14:42


Es werden nicht alle IP's angezeigt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leutz,

ich möchte über folgende Funktion alle lokalen IP's ermitteln:

Delphi-Quellcode:
uses
  WinSock;

function GetLocalIPs: string;
type
  PPInAddr = ^PInAddr;
var
  wsadata : TWSAData;
  hostinfo : PHostEnt;
  addr    : PPInAddr;
begin
  Result  := '';

  if(WSAStartUp(MAKEWORD(1,1),wsadata) = 0) then
  try
    hostinfo := gethostbyname(nil);
    if(hostinfo <> nil) then begin
      addr  := pointer(hostinfo^.h_addr_list);

      while(addr^ <> nil) do begin
        Result := Result + inet_ntoa(addr^^) + ^M^J;
        inc(addr);
      end;
    end;
  finally
    WSACleanUp;
  end;
end;
Ich rufe die Funktion im OnCreate Ereigniss auf und weise das Ergebniss einem Panel zu.

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
 Panel1.Caption := GetLocalIPs;
end;
Allerdings wird nur eine IP Adresse im Panel eingetragen obwohl 2 NIC's vorhanden sind die auch beide eine IP haben (ipconfig /all zeigt diese auch an - siehe Anhang).

Wo ist mein Denkfehler ?

Helpliner 5. Sep 2003 16:02

Re: Es werden nicht alle IP's angezeigt
 
Keiner eine Idee ??

Jörn 5. Sep 2003 19:47

Re: Es werden nicht alle IP's angezeigt
 
Also bei mir geht das wunderbar. Das einzige Problem das ich kenne ist wenn man über einen Router online geht, das meistens die IP die man im Internet hat, nicht mit angezeigt wird.

Christian Seehase 5. Sep 2003 22:30

Re: Es werden nicht alle IP's angezeigt
 
Moin Helpliner,

Zitat:

Zitat von Helpliner
Wo ist mein Denkfehler ?

Eine Caption zeigt keine mehrzeiligen Texte an.

Lass Dir das Ergebnis der Funktion mal mit ShowMessage anzeigen. Es sollte dann nämlich stimmen.

Helpliner 6. Sep 2003 13:44

Re: Es werden nicht alle IP's angezeigt
 
Danke Christian, das hat Super geklappt, aber kann ich den Rückgabewert der Funktion jetzt auch irgendwie in ein Memo oder eine StringList einfügen ? Eigentlich sind String und TStrings ja inkompatibel.

Luckie 6. Sep 2003 13:47

Re: Es werden nicht alle IP's angezeigt
 
Beide (Memo und TStringlist) haben die Eigenschaft Text.

Helpliner 6. Sep 2003 13:52

Re: Es werden nicht alle IP's angezeigt
 
Arghhh :freak: OK....blöde Frage!
Jetzt geht alles - vielen Dank an euch


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz