Find min egen ip-adresse...

Tags:    delphi

User
Bruger #475 @ 20.10.01 18:27
Jeg har et lille problem... Jeg har et program så skal kunne finde ip-adressen på den computer programmet køre på... er der nogen der ved hvordan man finder ud af det ?



2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
<quote>Jeg har et lille problem... Jeg har et program så skal kunne finde ip-adressen på den computer programmet køre på... er der nogen der ved hvordan man finder ud af det ?
</quote>

Det så lidt rodet ud, prøver igen:

<pre>
function TForm1.GetLocalTcpAddress : string;
var
localAddress: string;
s : String;
p : PHostEnt;
wsa : TWsaData;
begin
Result := '';
if localAddress = '' then begin
WSAStartup(2, wsa);
SetLength(s, 255);
if GetHostName(pchar(s), length(s)) <> 0 then
exit;
setlength(s, StrLen(PChar(s)));
p := GetHostByName(pchar(s));
if p = NIL then
exit;
localAddress := Format('%d.%d.%d.%d',[
Byte(p.h_addr^[0]),
Byte(p.h_addr^[1]),
Byte(p.h_addr^[2]),
Byte(p.h_addr^[3])]);
WSACleanup;
end;
Result := localAddress;
end;

</pre>
Husk at tage winsock med i din uses linie.

/Data




<quote>Jeg har et lille problem... Jeg har et program så skal kunne finde ip-adressen på den computer programmet køre på... er der nogen der ved hvordan man finder ud af det ?</quote>

Ja, prøv:
<quote>
function TForm1.GetLocalTcpAddress : string;
var
localAddress: string;
s : String;
p : PHostEnt;
wsa : TWsaData;
begin
Result := '';
if localAddress = '' then begin
WSAStartup(2, wsa);
SetLength(s, 255);
if GetHostName(pchar(s), length(s)) <> 0 then
exit;
setlength(s, StrLen(PChar(s)));
p := GetHostByName(pchar(s));
if p = NIL then
exit;
localAddress := Format('%d.%d.%d.%d',[
Byte(p.h_addr^[0]),
Byte(p.h_addr^[1]),
Byte(p.h_addr^[2]),
Byte(p.h_addr^[3])]);
WSACleanup;
end;
Result := localAddress;
end;
</Quote>

Husk at tage winsock med i din uses linie.

/Data




t