Ip´s da rede interna
Ola galera, alguém sabe como posso extrair todos os Ip´s das maquinas da minha rede?
Valeww
Valeww
Brother_direct
Curtidas 0
Respostas
Xanatos
20/12/2004
Bom...deve haver maneira melhor mas se voce pegar o ip da tua maquina... ex: 10.0.0.15 ou 192.168.0.15 ...e dai vc comeca a pingar nos ips por exemplo 192.168.0.1 , 192.168.0.2, e assim por diante e a medida que forem dando resposta vc armazena uma lista com esses ips...e assim sabera os ips das maquinas que estao ligadas nesse momento...
Bom..espero q isso lhe ajude...
Bom..espero q isso lhe ajude...
GOSTEI 0
Brother_direct
20/12/2004
caro colega, mto obrigado pela dica, mais necessito de um exemplo pela falta de experiência
Valeww
Valeww
GOSTEI 0
Xanatos
20/12/2004
Bom... Voce pode usar o IdIcmpClient da palheta Indy Clients para pingar nos Ips... e para descobrir o Ip da tua maquina voce usa:
Depois que voce tiver esse IP voce comeca a Pingar nos possiveis Ips da rede...
uses
Winsock;
{...}
function getIPs: Tstrings;
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 := TstringList.Create;
Result.Clear;
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.Add(inet_ntoa(pptr^[I]^));
Inc(I);
end;
WSACleanup;
end;
Depois que voce tiver esse IP voce comeca a Pingar nos possiveis Ips da rede...
GOSTEI 0
Brother_direct
20/12/2004
ok mano valew mesmo, ja implementei e ficou bala.
Abraços
Abraços
GOSTEI 0