Hent min IP med Delphi-programmering

Simpelthen teknisk: Internettet er bygget på TCP / IP-forbindelser. TCP-delen beskriver, hvordan to computere opretter en forbindelse til hinanden og overfører data. IP-delen handler primært om, hvordan du får en meddelelse dirigeret over internettet. Hver tilsluttet maskine har en unik IP-adresse, der giver andre mulighed for at finde ud af en sti til enhver computer rundt om på verdenswebben (eller netop verden).

For at få IP-adressen på den computer, du bruger, når du er tilsluttet internettet, er vi nødt til at kalde nogle af API-funktionerne * defineret * i Winsock-enheden.

Vi opretter en GetIPFromHost funktion, der kalder flere Winsock API-funktioner for at få IP. Inden vi endda kan bruge WinSock-funktioner, skal vi have en gyldig session. Denne session oprettes med WinSock WSAStartup-funktionen. Ved afslutningen af ​​vores funktion foretages et opkald til SAC leanup for at afslutte brugen af ​​Windows Sockets API'er. For at få computerens IP-adresse skal vi bruge GetHostByName sammen med GetHostName. Hver computer kaldes en vært, og vi kan få værtsnavnet med et specielt funktionskald: GetHostName. Vi bruger derefter GetHostByName til at hente IP-adressen, der er relateret til dette værtsnavn.

instagram viewer

Start Delphi og placer en Knap og to Redigere bokse på en nyoprettet formular. Tilføj GetIPFromHost funktion til implementeringsdelen af ​​din enhed og tildel følgende kode til OnClick-begivenhedshåndtereren med en knap (nedenfor):