Le code ci-dessous fonctionne bien avec PB 3.93 mais donne d'étrange résultats avec la dernière version (3.94).
J'ai un autre programme de Ping donnant des résultats plus détaillés par analyse de la variable Echo.
Même problème: La version compilée avec 3.93 fonctionne parfaitement mais pas avec 3.94. Avec ce dernier programme, l'analyse de la variable Echo après la fonction IcmpSendEcho_ donne l'info suivante: Buffer too small.
Merci de tester et de me faire part de vos commentaires
Code : Tout sélectionner
Echo.ICMP_ECHO_REPLY
EchoMessage.s = "MVPing effectue un PingTest" ;+ Space(20)
If OpenConsole()
ConsoleTitle("MVPing")
Repeat
ConsoleColor(15,0)
Print("Adresse IP: ")
ConsoleColor(10,0)
sIPAddress.s = Input()
PrintN("")
If Len(sIPAddress ) > 0
hFile.l = IcmpCreateFile_()
IPAddress.l=MakeIPAddress(Val(StringField(sIPAddress,1,".")),Val(StringField(sIPAddress,2,".")),Val(StringField(sIPAddress,3,".")),Val(StringField(sIPAddress+".",4,".")))
ConsoleColor(14,0)
For Boucle.l = 1 To 4
lngResult.l = IcmpSendEcho_(hFile, IPAddress, EchoMessage, Len(EchoMessage), 0, Echo, SizeOf(ICMP_ECHO_REPLY), 500)
PrintN("Ping " + sIPAddress + " Octets: " + Str(Echo\DataSize) + " Temps: " + Str(Echo\RoundTripTime) + " ms TTL:" + Str(Echo\Options))
Delay(500)
Next
EndIf
Until sIPAddress= ""
EndIf
End