Para verificar se um determinado computador está na rede, você pode usar a função Ping para verificar a disponibilidade desse computador na rede.
Em Delphi, você pode fazer isso usando a unidade IdIcmpClient da biblioteca Indy (Internet Direct) para enviar um pacote ICMP (Ping) e aguardar uma resposta.
Aqui está um exemplo de como fazer isso:
uses IdIcmpClient, SysUtils; function PingHost(const HostName: string): Boolean; var IdIcmpClient: TIdIcmpClient; begin IdIcmpClient := TIdIcmpClient.Create(nil); try IdIcmpClient.Host := HostName; IdIcmpClient.ReceiveTimeout := 1000; // Tempo limite para receber uma resposta (em milissegundos) try IdIcmpClient.Ping; Result := IdIcmpClient.ReplyStatus.ReplyStatusType = rsEcho; except // Tratamento de exceção se o ping falhar Result := False; end; finally IdIcmpClient.Free; end; end; begin if PingHost('endereco_ip_ou_nome_do_host') then Writeln('O computador está na rede.') else Writeln('O computador não está na rede.'); end.
Neste exemplo, a função PingHost verifica se o computador especificado por endereco_ip_ou_nome_do_host está na rede. Se o computador estiver disponível e responder ao ping, a função retornará True. Caso contrário, retornará False.
Lembre-se de que você precisa ter as bibliotecas Indy instaladas e configuradas no seu projeto Delphi para usar a unidade IdIcmpClient. Certifique-se também de que a máquina onde o código está sendo executado tenha permissão para enviar pacotes ICMP para o computador de destino (geralmente, os firewalls podem bloquear isso).
Substitua endereco_ip_ou_nome_do_host pelo endereço IP ou nome do host que deseja verificar na rede.
Utilizamos cookies e outras tecnologias semelhantes para melhorar a sua experiência no nosso site.
Ao continuar navegando, você declara que está de acordo com a nossa política de privacidade.
Copyright © TyttoSoft 2018 | Desenvolvido por www.TyttoSoft.com.br