• Domingo 22 de Diciembre de 2024, 18:05

Autor Tema:  Implementacion Ping???  (Leído 3312 veces)

zed2000

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Implementacion Ping???
« en: Martes 31 de Octubre de 2006, 17:08 »
0
Hola q tal amigos, tengo una gran duda acerca de como puedo implementar el famoso ping.exe en un programa q estoy escribiendo el problema es q quiero q al implementarlo con la funcion system esta me funciona bien por q cuando el 'host esta activo' me duelve un 1 pero la pantallita negra se muestra, como puedo hacer para q esto no ocurra, he probado tambien con shellexecute pero esta solo me dice si dicha aplicacion funciono o no.

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #1 en: Martes 31 de Octubre de 2006, 22:24 »
0
Cita de: "zed2000"
Hola q tal amigos, tengo una gran duda acerca de como puedo implementar el famoso ping.exe en un programa q estoy escribiendo el problema es q quiero q al implementarlo con la funcion system esta me funciona bien por q cuando el 'host esta activo' me duelve un 1 pero la pantallita negra se muestra, como puedo hacer para q esto no ocurra, he probado tambien con shellexecute pero esta solo me dice si dicha aplicacion funciono o no.
En efecto, eso sucede porque tanto system como shellexecute no remiten la salida del programa a una variable.
 :rolleyes: Pero no se como arreglar eso
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #2 en: Martes 31 de Octubre de 2006, 22:41 »
0
Código: Text
  1.  
  2. ping www.foros.solocodigo.com >>salida.txt
  3.  
  4.  
Crea un archivo llamado salida.txt en el directorio actual con toda la salida del ping

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #3 en: Martes 31 de Octubre de 2006, 23:37 »
0
yo realize ese proyecto para una feria de proyecto en la universidad de santa cruz, y realize lo que menciona Enko.
Citar
ping www.foros.solocodigo.com >>salida.txt

que eso te creara un archivo en la direccion en la que te encuentras actualmente.
Tambien puedes hacerlo asi.
Código: Text
  1.  
  2. ping www.foros.solocodigo.com >>D:\salida.txt
  3.  
  4.  

las dos flechas >>, puedes tambien reemplazarlas por >, esto para que reemplazes el anterior ping.

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #4 en: Martes 31 de Octubre de 2006, 23:40 »
0
Si pero lo que el quiere (segun veo) es lo que en Perl seria asi:
Código: Text
  1. my $ping = `ping solocodigo.com`;
  2.  
:alien:
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #5 en: Miércoles 1 de Noviembre de 2006, 00:12 »
0
ummm, entonces no le entiendo.

Esperaremos que zed2000 vuelva explicar mejor su problema para seguir con las respuestas.

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #6 en: Miércoles 1 de Noviembre de 2006, 00:39 »
0
Bueno pero el problema es, que si se usa lo que Enko y lencho dice (lo que puse en Perl tambien...) es que el programa se quedaria esperando a que ping terminara y si el ping de Windoes es igual al de GNU o Unix pues saturaria la memoria o el usuario se cansaria de esperar a que terminara de imprimir el empaquetado de ping.
Creo que si  :scream:  zwd2000 tiene que explicar mejor...
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #7 en: Miércoles 1 de Noviembre de 2006, 01:27 »
0
Cita de: "su -"
Bueno pero el problema es, que si se usa lo que Enko y lencho dice (lo que puse en Perl tambien...) es que el programa se quedaria esperando a que ping terminara y si el ping de Windoes es igual al de GNU o Unix pues saturaria la memoria o el usuario se cansaria de esperar a que terminara de imprimir el empaquetado de ping.
Creo que si  :scream:  zwd2000 tiene que explicar mejor...
 :blink: ¿Como puede saturar la memoria?
A menos que sea como poner "ping server -t".

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #8 en: Miércoles 1 de Noviembre de 2006, 01:50 »
0
Pues en Unix ping imprime los paquetes recividos, el tiempo y la sequencia y a cuantos bytes, cada linea equivale a unos 80 bytes y eso depende del nombre del dns y la ip, en cuestion de un minuto tendria almacenado mas o menos 480 bytes, para una hora 28800 y para un año 246 067 200 bytes, asi se podria saturar  :P  aunque es mas factible que el usuario se canse, si es que hay alguno  :whistling:
[edit]
Oops, bueno en el metodo de Enko y lencho no pero no se si es lo que quiere  :rolleyes:
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

Geo

  • Miembro de PLATA
  • *****
  • Mensajes: 1011
  • Nacionalidad: mx
    • Ver Perfil
    • http://hsblog.mexchip.com
Re: Implementacion Ping???
« Respuesta #9 en: Miércoles 1 de Noviembre de 2006, 02:15 »
0
ping en Windows no se queda trabajando como en Linux, da unas cuantas salidas y finaliza.
La imaginación es el límite.
Hardware & Software | Mexchip

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #10 en: Miércoles 1 de Noviembre de 2006, 02:35 »
0
Cita de: "Geo"
ping en Windows no se queda trabajando como en Linux, da unas cuantas salidas y finaliza.
Bien, pero aun asi no creo que se dese crear un archivo para tenerlo que trabajar, borrarolo siendo que en teoria puedes guardar la salida del programa en un arreglo, por lo menos eso creo auqnue no se como se haria en C/C++
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

zed2000

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #11 en: Miércoles 1 de Noviembre de 2006, 04:23 »
0
Hola q tal amigos aqui estoy de nuevo para brindarles un poco mas de informacion.
lo  q sucede es lo siguiente

char ping[]="ping -n 1 www.solocodigo.com";
int a;
a=system(ping);
el valor devuelto por la funcion system depende tambien de la implementacion de el comando ping osea lo q yo quiero averiguar es q si realmente ese host esta activo, esa seria la intruccion ya q al estar el host activo me devuelve un 1,pero al ejecutar el comando system me aparece la pantalla negra, eso es lo q yo quiero evitar ok.
saludos

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #12 en: Miércoles 1 de Noviembre de 2006, 05:12 »
0
ummm, pues creo, (ojala y me equivoque), que eso no se va a poder, ahurita no recuerdo que hize exactamente para solucionar el problema de la aparicion de la ventana, por que a mi tambien me molestaba ver que aparezca cada vez que verificaba la conectividad con cierto host.

creo que en c++ Builder hay un componente *Indy, (no se con que comienza), que realiza eso.

Osea lo que quieres hacer tu.

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #13 en: Miércoles 1 de Noviembre de 2006, 09:04 »
0
system() no te devuelve nada util, siempre cero sin importar que haya logrado hacer el ping o no ... podrias tratar de usar ICMP.dll ... o IMPLEMENTARLO ya que usas esa palabra de verdad, aunque eso si es un poco mas complejo.

Edito: tambien te devuelve 1 si no es capaz de resolver el DNS a una ip ... pero si responde o no devuelve 0 ... no podes confiar en system ni en ping.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

Bicholey

  • Moderador
  • ******
  • Mensajes: 1234
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #14 en: Miércoles 1 de Noviembre de 2006, 16:01 »
0
:lol:  :lol:  :lol:

Muy interesante , solo que : www.solocodigo.com nunca respondio al ping acaso www.solocodigo.com, ya esta configurado para no responder al ping ???????
[size=109]LOS GATOS SIEMPRE CAEMOS DE PIE !!![/size]


lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #15 en: Miércoles 1 de Noviembre de 2006, 16:14 »
0
yo lo tomaba como ejemplo, es mas, nisiquiera me fije si respondia, jajjajaj.

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Implementacion Ping???
« Respuesta #16 en: Miércoles 1 de Noviembre de 2006, 21:56 »
0
Cita de: "Bicholey"
:lol:  :lol:  :lol:

Muy interesante , solo que : www.solocodigo.com nunca respondio al ping acaso www.solocodigo.com, ya esta configurado para no responder al ping ???????
En efecto, entoces lo mejor seria crear una funcion que se trate de conectar a algun servisio asi se sabe se el host esta vivo o no y no hay porque tener que meterse en pbroblemas con eso de si tiene o no antiping  :)
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.