PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → ping Windev et ping Windows
ping Windev et ping Windows
Débuté par Yvan, 02 aoû. 2020 14:56 - 1 réponse
Membre enregistré
214 messages
Posté le 02 août 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.
Membre enregistré
948 messages
Posté le 02 août 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