Bonjour,
Pour lancer des sauvegardes entre ordinateurs de mon réseau local chez moi, je lance une batterie de vérification, vérification de présence de PC et routeur.
Je me trouve avec un problème pour pinger l'IP de mon routeur wifi / Ethernet. Qu'il soit allumé ou pas, mon code VBA me renvoie un résultat ok
voici ma fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Dim intPingResult As Integer Dim ipRouteur As String ' Remplacez cette adresse IP par l'adresse IP de votre routeur ipRouteur = "192.168.1.252" ' Exemple : adresse IP du routeur ' Crée un objet Shell pour exécuter la commande ping Set objShell = CreateObject("WScript.Shell") ' Exécute la commande ping et redirige le résultat vers une variable strCmd = "ping -n 1 " & ipRouteur ' Exécute la commande et récupère le code de résultat (0 si le routeur répond) intPingResult = objShell.Run(strCmd, 0, True) ' Si le ping retourne 0, le routeur est accessible If intPingResult = 0 Then VerifierRouteur = True ' Le routeur est allumé et accessible Else VerifierRouteur = False ' Le routeur n'est pas accessible End If ' Libère l'objet Shell Set objShell = Nothing End Function
et le code dans mon formulaire
Dans mon module, si je remplace l'IP par 192.168.1.252, le résultat est OK
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 If VerifierRouteur() Then ImageRouteurSup.Visible = False ImageRouteurCoche.Visible = True Else ImageRouteurCoche.Visible = False ImageRouteurSup.Visible = True erreurRouteur = "Le routeur wifi / ethernet n'est pas allumé" & vbCrLf & vbCrLf & "" End If
Par contre, si je remplace par 12.168.1.252, le résultat est KO
Alors j'ai décidé de lancer les ping directement via commande dos
voici les résultats obtenus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 C:\WINDOWS\system32>ping 192.168.1.253 Envoi dune requête 'Ping' 192.168.1.253 avec 32 octets de données*: Réponse de 192.168.1.253*: octets=32 temps=439 ms TTL=64 Réponse de 192.168.1.253*: octets=32 temps=1 ms TTL=64 Réponse de 192.168.1.253*: octets=32 temps=1 ms TTL=64 Réponse de 192.168.1.253*: octets=32 temps=1 ms TTL=64 Statistiques Ping pour 192.168.1.253: Paquets*: envoyés = 4, reçus = 4, perdus = 0 (perte 0%), Durée approximative des boucles en millisecondes : Minimum = 1ms, Maximum = 439ms, Moyenne = 110ms
je remarque que le nombre de paquets perdu est de 0 et en résultat : "Réponse de...."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 C:\WINDOWS\system32>ping 192.168.1.252 Envoi dune requête 'Ping' 192.168.1.252 avec 32 octets de données*: Réponse de 192.168.1.74*: Impossible de joindre lhôte de destination. Réponse de 192.168.1.74*: Impossible de joindre lhôte de destination. Réponse de 192.168.1.74*: Impossible de joindre lhôte de destination. Réponse de 192.168.1.74*: Impossible de joindre lhôte de destination. Statistiques Ping pour 192.168.1.252: Paquets*: envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
par contre, avec un IP commençant par 12.x.x.x, il y a bien 4 paquet de perdu et en résultat "Délai d'attente...."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 C:\WINDOWS\system32>ping 12.168.1.252 Envoi dune requête 'Ping' 12.168.1.252 avec 32 octets de données*: Délai dattente de la demande dépassé. Délai dattente de la demande dépassé. Délai dattente de la demande dépassé. Délai dattente de la demande dépassé. Statistiques Ping pour 12.168.1.252: Paquets*: envoyés = 4, reçus = 0, perdus = 4 (perte 100%),
Partager