Criando serviço de windows

Delphi

07/03/2005

Pessoal criei um serviço de windows e coloquei apenas um IdTCPServer e instalei na máquina de um usuário, mas não consigo conectar nele com o
IdTCPClient. Eu quero criar este serviço para que depois eu possa enviar algum comando para a máquina do usuário.

// serviço que criei //

procedure TGoias.ServiceStart(Sender: TService; var Started: Boolean);
begin
ChatServer.DefaultPort :=4123;
ChatServer.Active := true;
end;

// Teste de conexao de minha máquina //

idTCPClient1.Host := ´192.201.1.44´;
idTCPClient1.Port := 4123;
try
idTCPClient1.Connect;
except
on E: Exception do
ShowMessage(´Erro :´ + #13 + E.Message);
end;
if idTCPClient1.Connected then
ShowMessage(´Conectado !´);
idTCPClient1.Disconnect;
end;


Michel

Michel

Curtidas 0

Respostas

Massuda

Massuda

07/03/2005

Está dando algum erro?

idTCPClient1.Host := ´192.201.1.44´;
Este IP é da sua máquina (segundo o ARIN, serviço de registro de IPs americano, esse IP pertence à MCI)? Já experimentou usar 127.0.0.1?


GOSTEI 0
Michel

Michel

07/03/2005

Massuda o ip 192.201.1.44 é o Ip da máquina de um usuário que instalei o serviço. Aí tento fazer conexao atraves da minha maquina pelo idTCPClient1 mas esta dando o erro ( Socket ERro #10060 ) Connection timed out.

A idéia é fazer um servidor( máquina usuario ) que aí me conecto a ele mandando mensagem tipo : mensagem (xx) : Startar o aplicativo VNC.

Valeu


GOSTEI 0
Massuda

Massuda

07/03/2005

Experimentei testar seu código com duas modificações:[list=1:619f5bb436][*:619f5bb436]usei minha própria máquina para rodar o servidor e o cliente (via localhost, ou seja, IP 127.0.0.1, e pelo IP dela na rede interna da empresa)[*:619f5bb436]não usei o TIdTCPServer dentro de um serviço[/list:o:619f5bb436]Seu código funcionou sem problemas. Sugiro que você verifique o seguinte:[list:619f5bb436][*:619f5bb436]se o IP do cliente está correto[*:619f5bb436]se o [b:619f5bb436]cliente[/b:619f5bb436] tem algum tipo de firewall instalado (*)[*:619f5bb436]se [b:619f5bb436]você[/b:619f5bb436] tem algum tipo de firewall instalado (*)[*:619f5bb436]se está ocorrendo algum erro quando o serviço é iniciado na máquina do cliente[/list:u:619f5bb436](*) incluindo aí o firewall do Windows XP/SP2

O erro que você informou, 10060, é timeout na conexão. Isso ocorre se o servidor não estiver acessível (por exemplo, não está rodando ou está atrás de um firewall ou o IP está errado).


GOSTEI 0
Michel

Michel

07/03/2005

Massuda foi isso mesmo era o firewall do XP..Valeu


GOSTEI 0
POSTAR