Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ¿Cómo detectar si un equipo está encendido o no via red? (https://www.clubdelphi.com/foros/showthread.php?t=57458)

enecumene 16-06-2008 16:02:16

¿Cómo detectar si un equipo está encendido o no via red?
 
Pues eso, ¿alguien sabe como hacerlo?, estuve pensando en hacer una lista de equipos, y que a cada lado tenga una especie de Led que me indica si el equipo está encendido o no, eso yo lo sé hacer, pero no sé como determinar si el equipo está encendido o no en la red.

Espero haberme explicado bien,

Saludos.

BlueSteel 16-06-2008 16:13:19

Cita:

Empezado por enecumene (Mensaje 293846)
Pues eso, ¿alguien sabe como hacerlo?, estuve pensando en hacer una lista de equipos, y que a cada lado tenga una especie de Led que me indica si el equipo está encendido o no, eso yo lo sé hacer, pero no sé como determinar si el equipo está encendido o no en la red.

Espero haberme explicado bien,

Saludos.

Se me ocurre que con solo realizar un Ping al equipo... podrias saber si esta prendido... aunque si le cambian nombre al Pc o le cambian la Dirección IP, tampoco se podria saber.. por lo cual al usuario no deberias darle privilegios de cambios de nombre ni modificación de IP.. y tampoco podrias asignar IP mediante DHCP...

Ping Nombre_Pc o
Ping Dirección_IP

Salu2:p:D

enecumene 16-06-2008 16:34:28

Vale BlueSteel, no lo había pensado de esta manera siempre pensé que se hace de otro modo, dejame hacer la prueba.

Saludos.

enecumene 16-06-2008 19:23:03

Bueno, ya puedo hacer el ping, conseguí este truco:

http://delphi.about.com/od/interneti.../aa081503a.htm

Y funciona rebien, ahora me toca hacer la presentación, a ver si me aconsejan en esta parte, los IP estarán almacenados en la base de datos, y quiero crear la lista de forma automatica, aqui os pongo un ejemplo de como lo quiero hacer:

http://img180.imageshack.us/img180/5208/lineascm1.jpg

O sea, crearlo automaticamente desde la base sin tener que crearlo uno a uno que es lo fácil. No sé si me han comprendido. Si hay alguna otra manera de hacerlo pues bienvenido sea! :p.

Saludos.

fer21unmsm 16-06-2008 20:06:53

Hola disculpen que me meta, pero es para una intranet, y siemppre van a tener el 139 abierto, ya que en caso de que lo tenga cerrado con el ping no podrá saber si está encendida o no, pero si va a estar abierto no hay problema, tambien hay un utilitario que puedes usar en tu programa, que es el nmap que te averigua los puertos abiertos de una pc, claro que al menos debe tener algun puerto abierto para que pueda detectar si esta encendida, con respecto a lo segundo una base de datos, pero que pondrías ahí? las ips en general, luego tendrias que hacer una funcion que vaya comprobando conectividad con las diferentes pcs y luego puedes almacenarlas en una lista enlazada , o en directamente a una funcion que cree dinamicamente los panels asignandole la información. O tal vez en la base de datos almacenarás algún historial?

Saludos.

enecumene 16-06-2008 20:25:31

Hola fer21unmsm, el puerto 139 siempre está abierto, lo segundo es que cada aparato (Equipos biometricos de ponches) se le asigna un IP, en la base de datos yo guardo los departamentos de la institucion entre ellos la ip del aparato asignado al Dpto., por eso quiero crearlo automaticamente, de forma que si a un departamento se le asigno un aparato de ponche se guarda en la base y se crea automaticamente y no crearlo manual porque ya eso es bastanta trabajo ¿no?, no se si se me entendió, cualquier cosa digamelo que repito son gusto.

Saludos.

BlueSteel 16-06-2008 22:30:54

Solo queria agregar, que, de acuerdo a la pregunta

¿Cómo detectar si un equipo está encendido o no via red?,

que tienes que considerar que si el Computador esta prendido, pero no esta conectado al cable de Red, no podrás verlo en el sistema.

Tambien, para el diseño realizaría un entorno más vistoso, algo así como una panel al lado izquierdo, con la imagen de un Computador por cada computador que se conecte a la red (Tipo vista en miniatura del los iconos de windows), y al lado derecho otro panel, con imagenes de computadores que estan apagados (tipo vista de listas de los iconos de windows)...

Me acuerdo haber visto algun componente (no me acuerdo de quien era... si era Roman o no), de tipo grafico que manejaba objetos como el clipart...


Salu2:p:D

seoane 16-06-2008 22:38:06

Cita:

Empezado por fer21unmsm (Mensaje 293926)
... siemppre van a tener el 139 abierto, ya que en caso de que lo tenga cerrado con el ping no podrá saber si está encendida o no

Solo un apunte, el ping no utiliza puertos.

fer21unmsm 17-06-2008 20:06:56

Cita:

Empezado por seoane (Mensaje 293974)
Solo un apunte, el ping no utiliza puertos.

Un lapsus brutus, sorry, gracias seoane, tienes razón me estaba confundiendo con los comandos del netbios(estoy en la luna de paita).

Bueno a la pregunta, creo que podrías hacer como una especie de scanner de acuerdo a tu red, le das un rango, para que detecte las pcs nuevas que se instalen, y como te mencione posts arriba puedes usar el nmap que está creado te brinda muchas funcionalidades para analizar la red, ejemplo en mi anterior anterior trabajo se usó para crear una consola de administración remota para el control de un antivirus (The Hacker).

Espero al menos haberte dado una idea, aunque sea muy poco

Saludos cordiales.

enecumene 17-06-2008 20:11:49

Cita:

Empezado por fer21unmsm (Mensaje 294140)
Un lapsus brutus, sorry, gracias seoane, tienes razón me estaba confundiendo con los comandos del netbios(estoy en la luna de paita).

Bueno a la pregunta, creo que podrías hacer como una especie de scanner de acuerdo a tu red, le das un rango, para que detecte las pcs nuevas que se instalen.

Gracias fer21unmsm, con el código del ping es más que suficiente y es lo que necesitaba, me sirve para ver el estado de un equipo si está On/Off o Online/Offline, y gracias a Eduarcol pude lograr el asunto de la presentación como este ejemplo:

http://img180.imageshack.us/img180/5208/lineascm1.jpg

Ahora mismo estoy tratando de implementar la presentación con el código del Ping.

Saludos.


La franja horaria es GMT +2. Ahora son las 06:30:44.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi