Posts
Um jeito é verificar se uma determinada porta está em uso; uma porta aberta significa que ela está aguardando uma conexão (está ´ouvindo´). Tente instalar um servidor (por exemplo, um TSocketServer, um TIdTCPServer, etc) que use a porta; se falhar, é porque a porta já está em uso.
Blz Massuda, mas através da API do windows, sera que não existe nenhuma função que retorne se a porta esta aberta ou não?
obrigado,
Rândallo Prux
[b:2cf413a0ca]Randallo[/b:2cf413a0ca], acredito q utilizando idéia passada pelo [b:2cf413a0ca]Massuda[/b:2cf413a0ca], vc poderia tratar esse erro para obter o status de sua porta, se não for retornado nenhum erro, a porta está fechada, caso contrário está aberta, vc poderia usar:
Try
...
{seus comandos...}
Except
...
{seus comandos...}
End;
Boa sorte!!!
...através da API do windows, sera que não existe nenhuma função que retorne se a porta esta aberta ou não?
Não tem nenhuma rotina pronta... se quiser pode usar a unit WinSock e abrir ´na unha´ um socket em uma determinada porta em modo listen... se falhar, a porta está em uso/aberta caso contrário estava fechada. Qualquer que seja o método que você optar, lembre de fechar o socket/servidor porque se a porta não estava aberta, com o teste você abriu a porta.
Ae, tentei usar o IdTCPServer mas toda hora que o programa abre da erro dizendo que o endereço/porta ja está em uso, mas acontece que não
alguem tem alguma dica?
abraço
[quote:a2a799f6c0=´Enio Marconcini´]...o endereço/porta ja está em uso, mas acontece que não[/quote:a2a799f6c0]Se você tem um servidor usando uma determinada porta, mesmo que não existam conexões ativas, a porta está aberta/em uso pelo servidor.
Nesse tópico que você desenterrou, a pessoa queria saber se a porta está aberta; no seu caso realmente está. Se o servidor iniciasse sem erro, significa que a porta estava fechada.
então, deixa eu explicar melhor
o programa ira rodar em localhost (127.0.0.1) APENAS, não ira monitorar nenhum outro micro da rede.
preciso saber, se uma determinada porta está CONECTADA,
com o netstat -n aparece
TCP 192.168.0.42:2901 208.98.7.8:6667 ESTABLISHED
indica que existe coneção feita na porta local [b:6f0fcff7f7]2901[/b:6f0fcff7f7]
seria exatamente isso que eu precisava!!!
abraço
Sem querer ser rude... mas afinal, o que você quer? Pelos tópicos que desenterrou, dá a impressão que você quer saber quais os usuários conectados no servidor InterBase.
Sem querer ser rude... mas afinal, o que você quer? Pelos tópicos que desenterrou, dá a impressão que você quer saber quais os usuários conectados no servidor InterBase.
é o q parece, se for isso ele não pode usar os componentes para saber isso?
cara, como disse, só quero saber se existe conexão em uma determinada porta TPC. Nada de IB etc... mas isso pode me ser útil no futuro, mas no momento bastaria saber como programar isso no Delphi
abraços
É possível fazer via SNMP, mas não teria um exemplo disso. Buscando no Google, achei esta ferramenta com código fonte em Delphi...
[url=http://www.wilsonc.demon.co.uk/d7portanalyzer.htm]IP Port Analyzer[/url] de Colin Wilson
...que parece fazer o que você deseja.