Problème avec script ping IP Range

Problème avec script ping IP Range - VB/VBA/VBS - Programmation

Marsh Posté le 03-10-2012 à 16:30:41    

Bonjour,
 
Je n'arrive pas à comprendre pourquoi mon script ne s'arrête pas lorsque "intEndIP" est atteint.
 
Les valeurs "strSubnet", "intStartIP" et "intEndIP" sont bien pris en compte par le script.
Celui-ci début bien sur la première adresse IP correspondante à "strSubnet" + "intStartIP" soit dans mon script : strComputer = strSubnet & strIP
Mais lorsqu'il arrive sur la dernière adresse IP demandé, le script continu en testant les adresses IP qui suivent sans prendre en compte : Do Until x > intEndIP
 
Quelqu'un peut-il me dire d'où vient le problème ?
Merci par avance.
 
Voici mon script :
 

Code :
  1. 'User Input of Network ip
  2. Message = "Please enter Network IP:" & chr(10) & chr(10) & _
  3.   "Example: For 55.7.159.0/24" & chr(10) & _
  4.   "Type '55.7.159.' whitout '0'"
  5. Title = "Network IP"
  6. Network = InputBox(Message, Title, "55.7.159." )
  7. strSubnet = Network
  8. 'User Input of Start ip
  9. Message = "Please enter Start IP Range:" & chr(10) & chr(10) & _
  10.   "Example: For 55.7.159.1" & chr(10) & _
  11.   "Type '1'"
  12. Title = "Start Range"
  13. StartIP = InputBox(Message, Title, "1" )
  14. intStartIP = StartIP
  15. 'User Input of End ip
  16. Message = "Please enter End IP Range:" & chr(10) & chr(10) & _
  17.   "Example: For 55.7.159.255" & chr(10) & _
  18.   "Type '255'"
  19. Title = "End Range"
  20. EndIP = InputBox(Message, Title, "255" )
  21. intEndIP = EndIP
  22. 'Problème : Le script ne s'arrête pas lorsque intEndIP est atteind !!
  23. x = intStartIP
  24. Do Until x > intEndIP
  25.    strIP = CStr(x)
  26.       strComputer = strSubnet & strIP
  27.    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2" )
  28.    Set colItems = objWMIService.ExecQuery _
  29.        ("Select * from Win32_PingStatus " & _
  30.            "Where Address = '" & strComputer & "'" )
  31.     For Each objItem in colItems
  32.       If objItem.StatusCode = 0 Then
  33. WScript.Echo (strComputer & " - Reply received." )
  34.       Else
  35. WScript.Echo (strComputer & " - No Reply received." )
  36.       End If
  37.    Next
  38. x = x + 1
  39. Loop

Reply

Marsh Posté le 03-10-2012 à 16:30:41   

Reply

Marsh Posté le 08-11-2012 à 09:57:15    

Réponse ici = http://www.tek-tips.com/viewthread.cfm?qid=886788
 
Cdlt,
Vincsilver

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed