PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → ping Windev et ping Windows
ping Windev et ping Windows
Iniciado por Yvan, 02,ago. 2020 14:56 - 1 respuesta
Miembro registrado
214 mensajes
Publicado el 02,agosto 2020 - 14:56
Bonjour,

Je m'aperçois que je ne reçois pas toujours la même réponse entre la fonction ping de windev et le ping de windows.
Dans certains cas, je ping un domaine qui me renvoie vrai via la commande ping de windows mais faux depuis Windev.
Le timeout n'a rien à voir là-dedans, j'ai une réponse de 15ms au ping et j'ai mis des time out allant jusque 5s, sans succès.
J'ai aussi essayé en désactivant mon pare feu, rien n'y change...
Des idées?
Merci.
Miembro registrado
948 mensajes
Publicado el 02,agosto 2020 - 17:03
Bonjour
Testez avec cette fonction en C# que vous pouvez mettre directement dans votre code Windev.
Si vous ne connaissez pas la méthode pour coder en C# directement dans Windev,
lisez le post https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/239701-saisir-code/read.awp
using System;
using System.Net;
using System.Net.NetworkInformation;
using System.Text;

PUBLIC static string cPing(string HostAddress)
{
string InfoResult = "";
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
options.DontFragment = True;
string Data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(Data);
int timeout = 120;
try {
PingReply reply = pingSender.Send(HostAddress, timeout, buffer, options);
IF (reply.Status == IPStatus.Success){
InfoResult += reply.Address.ToString() + "\t";
InfoResult += reply.RoundtripTime + "\t";
InfoResult += reply.Options.Ttl + "\t";
InfoResult += reply.Options.DontFragment + "\t";
InfoResult += reply.Buffer.Length;
}
RETURN InfoResult;
}
catch (EXCEPTION)
{RETURN InfoResult;}
}


Trace(1+TAB+cPing("google.com"))
Trace(2+TAB+cPing("goooogleeee.com"))
Trace(3+TAB+cPing("192.168.1.1"))
Affiche
1 216.58.208.174 120 115 False 32
2
3 192.168.1.1 2 64 False 32

--
« L'erreur ne devient pas vérité parce qu'elle se propage et se multiplie ; la vérité ne devient pas erreur parce que nul ne la voit. » Gandhi