Pegando Imagem de Maq em Rede

08/12/2005

1

Pessoal,
Fiz um programinha simples que é parte integrante de um sistema maior que monitora a tela de computadores em uma rede rwindows utilizando os componentes TIdTCPServer e TIdTCPClient.
Tudo está funcionando bem agora que o sistema tem que avaliar apenas 20 máquinas, porém em 2006 passarão a ser 350!

Dito isto, esta é minha dúvida:
» Não consegui ´setar´ a propriedade <bindings> do TIdTCPServer (onde indica-se o ip e porta de origem) em tempo de execução, sendo assim tive que fazer um Server para !´cada máquina´! _ sei... parece idiotice, e é mesmo, mas estava com pouquíssimo tempo e não podia arriscar não conseguir desenvolver a budega! Agora com mais tempo e aparando as arestas, eu gostaria de saber se é possível mudar esta propriedade em tempo de execução para que eu possa pegar o IP co computador e seu usuário (funções que já tenho), fazendo assim somente um sistema que possa funcionar em qualquer máquina ?

Desde já agradeço a colaboração de todos.


Responder

Posts

08/12/2005

Massuda

Não entendi nada...

A princípio basta ter um programa servidor com um TIdTCPServer e nas máquina monitoradas ter o cliente com um TIdTCPClient. Periodicamente (pode usar um timer mesmo) o cliente manda para o servidor a imagem (snapshot) da área de trabalho.

No TIdTCPServer você tem que configurar apenas qual a porta que ele irá ´escutar´ (propriedade .DefaultPort). Já no TIdTCPClient você precisa configurar onde está o servidor (propriedade .Host, que pode ser o IP ou o nome - se houver DNS na sua rede - da máquina) e qual a porta que ele está escutando (propriedade .Port).


Responder

08/12/2005

Paulocesar1301

Então não preciso indicar qual o IP da máquina onde está instalado o Server?


Responder

08/12/2005

Massuda

Como escrevi no meu post anterior...
...Já no [b:d713cd7d59]TIdTCPClient[/b:d713cd7d59] você precisa configurar onde está o servidor (propriedade .Host, que [b:d713cd7d59]pode ser o IP ou o nome[/b:d713cd7d59] - se houver DNS na sua rede - da máquina)...
...logo ou você põe no TIdTCPClient.Host o IP da máquina do servidor ou você põe o nome da máquina do servidor; no segundo caso, teste antes se o sevidor pode ser localizado pelo nome a partir da máquina cliente fazendo o seguinte na máquina cliente...
PING NomeDoServidor
...se o PING tiver sucesso, você pode usar o nome da máquina do servidor. Usar o IP faz com que o tempo gasto na conexão seja menor, mas usar o nome da máquina tem suas vantagens também.


Responder

08/12/2005

Massuda

Talvez seja do seu interresse... [url=http://forum.clubedelphi.net/viewtopic.php?t=69507]neste tópico[/url] foi discutido como enviar uma imagem do cliente para o servidor.


Responder

08/12/2005

Paulocesar1301

Obrigado


Responder

09/12/2005

Vitor Rubio

Se precisar eu dou uma força. ^^

Pra ficar mais rápido eu tive que fazer uma procedure pra compactar a imagem usando zlib e mandar.

Se você puder capturar a imagem em baixa resolução ou em branco e preto, melhor ainda. Como eu não sabia como se faz isso, deixei como estava mesmo. Funciona só que fica meio lentinho.


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira