Ir para conteúdo

Checando Se O Servidor Está Online E Seu Ping!


dark rogue

Posts Recomendados

Você vai precisar de:

2 Labels(Aba Standard)

2 Edits(Aba Standard)

1 Button(Aba Standard)

1 IcmpClient(Aba Indy Clients)

1 Client Socket(Aba Internet)

 

Crie uma nova aplicação e adicione todos os items listados acima.

Troque a capiton de um label para IP do servidor e a do otro label para Porta, logo em seguida troque a capiton do button para Checar!, organize-os desse modo:

 

checarip.png

 

No evento OnClick do Button1, coloque o seguinte código:

if edit1.Text > '' then
IdIcmpClient1.Host:= edit1.Text;
IdIcmpClient1.Port:= StrToInt(Edit2.Text);
IdIcmpClient1.Ping('AnalisePing');
ClientSocket1.Host := edit1.Text;
ClientSocket1.Port := StrToInt(edit2.Text);
ClientSocket1.Active := True;

Manter cada linha dentro de seus respectivos "pais" não é necessário, mas ajuda a manter a ordem e a legibilidade do código.

 

Agora, no evento OnConnect do ClientSocket1, coloque esse codigo:

MessageBox(form1.Handle, 'Online! :)', 'Status do server:', mb_OK + mb_IconInformation);
ClientSocket1.Active := False;
Socket.Disconnect(StrToInt(Edit1.Text));

 

No evento OnError do ClientSocket1, adicione isso:

  MessageBox(form1.Handle, 'Offline!;(', 'Status do server:', mb_OK + mb_IconInformation);
 ClientSocket1.Active := False;
 abort;
 errorcode :=0;

 

Eba, estamos quase lá, só falta configurar o IcmpClient, então vamos lá!

No evento OnReply do seu client Adicione isso:

  ShowMessage('IP: '+IdIcmpClient1.Host+#13+
 'Port: '+IntToStr(IdIcmpClient1.Port)+#13+
 'Ping: '+IntToStr(AReplyStatus.MsRoundTripTime)+' milisegundos');

 

Agora é só compilar e ser feliz \õ/

 

Duvidas sobre esse tutorial? poste aqui!

 

see ya!

Editado por dark rogue
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Desisti dessa seção e provavelmente desse fórum... tem muito fórum por ae dando muito valor pra programadores em delphi, perder tempo pra nem ao menos ver um obrigado é F*da >.<'

Link para o comentário
Compartilhar em outros sites

  • 1 year later...
  • 8 months later...

Lembrando que se o firewall estiver habilitado para não responder requests icmp não irá funcionar...

 

Alguns vem com essa opção habilitada por causa de ataques DDOS :x

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...