Funçao Para achar o IP da maquina

28/01/2010

1

Olá Galera,
sou novo no fórum e venho tirar uma dúvida de tempos.
Um colega do Fórum antigo do DevMedia postou um  belo código para funcionamento de pegar ip da máquina,

http://forum.devmedia.com.br/viewtopic.php?p=129617&sid=6251e238fcf09ae8b537fdab5a969385

mas estava testando com Delphi 2009 e não foi. Inclusive estou com Windows 7 e tudo,
mas o retorno não foi muito bem. Gostaria de saber se alguém já testou isso no Delphi 2009
ou mesmo se mudou o funcionamento para que funcione em ambos.

Agradeço a todos pela ajuda,
Obrigado,

Thiago

Responder

Posts

28/01/2010

Emerson Souza

eu acho que esta função pode te ajudar.   Inclua na seção uses: WinSock { Esta função retorna o endereço IP do Dial-Up. }

function GetLocalIP : string;
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
pptr : PaPInAddr;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := '''';
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^[I] <> nil do begin
result:=StrPas(inet_ntoa(pptr^[I]^));
result := StrPas(inet_ntoa(pptr^[I]^));
Inc;
end;
WSACleanup;
end; codigo original http://www.tecnobyte.com.br/dica5.html#dica81
meu blog : www.emersonti.blogspot.com  
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira