IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

[VBS]Script balayage d'ip et remonter d'information


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Août 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 8
    Par défaut [VBS]Script balayage d'ip et remonter d'information
    Bonjours,

    Voilà, je vais tenter de vous expliquez clairement mon projet et mon problème:

    Mon script a pour but :
    -De scanner un réseau d'entreprise
    -De vérifier si le processus iexplore.exe est lancé.

    Pour cela je souhaite créer un .bat qui vas lancer un script master, ce script master va exécuter 4 autres script enfant.

    Ces 4 script ont en faite le même rôle...
    Ils ping une plage Ip puis remontent comme informations:
    -si la machine est injouagnable(non connecté/ip inexistente)
    -si la machaine est connecté
    -si sur la machine connecté le processus iexplore.exe est activé

    J'utilise 4 script pour découpé la plage ip qui se compose de cette manière:
    -172.16.3.x (1 à 127; 128 à 254)
    -172.16.9.x (1 à 127; 128 à 254)

    voici le code :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    station ="172.16.3."
     
    ON ERROR RESUME NEXT
    for toto = 127 to 254
     
     
    Newstation= station & toto 
    'wscript.echo Newstation
     
    Set objShell = CreateObject("WScript.Shell")
    Set objExec = objShell.Exec("ping -n 1 -w 1000 " & Newstation )
    strPingStdOut = LCase(objExec.StdOut.ReadAll)
     
    If InStr(strPingStdOut, "temps") Then
     
    MachinesActive= MachinesActive +1
    Set objWMIService = GetObject("winmgmts:\\" & Newstation & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_Process")
     
    for each ObjetProcessus in colitems
    'Wscript.echo ObjetProcessus.name 
     
    If Lcase(ObjetProcessus.name)= "iexplore.exe" then
    wscript.echo Newstation & "Processus actif"
     
    Jesuisla=1 
    Cumul = cumul + 1
    end if
     
    next
     
    if Jesuisla=0 then wscript.echo Newstation & "Processus inactif"
    else 
    wscript.echo newstation & "Impossible de joindre l'hote"
     
    end if
    CumulTotal = CumulTotal + 1
    next 
     
    wscript.echo "Machines connecté : " & MachinesActive
    wscript.echo "Machine Non connecté : " & CumulTotal - MachinesActive
    Wscript.echo "Processus Actif : " & cumul

    voilà !

    Donc mon problème réside dans le résultat.
    individuelement le script marche...
    mais dé que je les lance à partir du script master (qui éxécute les 4 script en simultané) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set WshShell = WScript.CreateObject("WScript.Shell")
    WshShell.Run ("balayage1.vbs" )
    WshShell.Run ("balayage2.vbs" )
    WshShell.Run ("balayage3.vbs" )
    WshShell.Run ("balayage4.vbs" )
    le scan s'exécute mais n'affiche plus de résultat...
    c a d que les 4 fenêtres se ferment une fois que le scan est fini.

    mon but final est de pouvoir obtenir un résultat total...
    c'est à dire d'additionner les résultats entre eux.
    ("Machines connecté" du script1 + celui du script 2,3 et 4 pour avoir un résultat finale... et ceci pareille avec "Machine non connecté" et "processus actif")

    donc comment faire ? j'ai pensé comme solution de mettre le résultat final de chaque script dans un .txt puis faire une opération pour avoir un total.

    est-ce réalisable ? de quel manière dois-je mi prendre ?

    Je suis pas sur de m'ettre bien expliquer je veux résumé :

    un .bat qui lance un script qui va exécuter 4 scripts en simultané qui vont balayé le réseau de l'entreprise pour savoir le nombre de machine connecté au reseau et le nombre de machine utilisant internet.
    L soucis est au niveau de l'affichage du résultat.

    Voilà j'espere avoir été claire !
    je vous remercie d'avance pour votre patiente et vos réponses.

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Tu peux mettre les résultats dans un fichier.txt à l'aide de FileSystemObject.
    Regarde la FAQ VBScript, elle t'explique comment faire.

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/10/2008, 11h25
  2. [VBS]Script balayage d'ip et remonter d'information
    Par jbmamba dans le forum VBScript
    Réponses: 0
    Dernier message: 28/08/2008, 14h26
  3. wsh VBS script de calcul de salaire net
    Par heinquoi dans le forum VBScript
    Réponses: 2
    Dernier message: 14/02/2007, 20h51
  4. Réponses: 2
    Dernier message: 31/05/2006, 09h58
  5. [VBS]Script d'enregistrement d'un document Word
    Par TomZ dans le forum VBScript
    Réponses: 1
    Dernier message: 22/03/2006, 09h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo