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 :

Lister tous les processus avec leurs chemins en ligne de commande


Sujet :

VBScript

  1. #1
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut Lister tous les processus avec leurs chemins en ligne de commande

    je veux lister tous les processus avec leurs chemeins en ligne de commande comme ceci :
    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
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set sho = CreateObject( "Wscript.Shell" )
    NomFichierLog="Processus.txt"
    temp = sho.ExpandEnvironmentStrings("%temp%")
    PathNomFichierLog = temp & "\" & NomFichierLog
    Set OutPut = fso.CreateTextFile(temp & "\" & NomFichierLog,1)
     
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
     
    Set colProcessList = objWMIService.ExecQuery _
        ("Select * from Win32_Process")
     
    For Each objProcess in colProcessList
        MsgBox objProcess.Name
        msgbox Mid(objProcess.CommandLine,InStr(objProcess.CommandLine,""" """) + 2)
    Next
    mais hélas j'ai cette erreur
    Utilisation non autorisé de Null Dans la ligne 17
    Alors je sollicite votre aide

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Cela doit t'arriver quand CommandLine et nul ... pour palier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     wScript.echo " ---------->  " & objProcess.Name & ">" & objProcess.CommandLine & "<"
    	st ="" & objProcess.CommandLine 
        wScript.echo  Mid(st,InStr(st,""" """) + 2)

  3. #3
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 416
    Points : 5 808
    Points
    5 808
    Par défaut
    J'ajouterais ceci : Si tu veux uniquement les processus ayant une ligne de commande teste ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For Each objProcess in colProcessList
      If objProcess.CommandLine <> "" then 
       MsgBox objProcess.Name
      If MsgBox(Mid(objProcess.CommandLine,InStr(objProcess.CommandLine,""" """) + 1),VbYesNo)=vbNo Then Wscript.Quit(0)
      End If  
    Next
    Mais si tu veux tous les processus, déplace l'instruction juste avant la première condition.
    A remarquer que la condition "If MsgBox(Mid...." est là juste pour pouvoir arrêter le script au moment voulu.

  4. #4
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut
    Citation Envoyé par bbil Voir le message
    Cela doit t'arriver quand CommandLine et nul ... pour palier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     wScript.echo " ---------->  " & objProcess.Name & ">" & objProcess.CommandLine & "<"
    	st ="" & objProcess.CommandLine 
        wScript.echo  Mid(st,InStr(st,""" """) + 2)
    Citation Envoyé par l_autodidacte Voir le message
    J'ajouterais ceci : Si tu veux uniquement les processus ayant une ligne de commande teste ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For Each objProcess in colProcessList
      If objProcess.CommandLine <> "" then 
       MsgBox objProcess.Name
      If MsgBox(Mid(objProcess.CommandLine,InStr(objProcess.CommandLine,""" """) + 1),VbYesNo)=vbNo Then Wscript.Quit(0)
      End If  
    Next
    Mais si tu veux tous les processus, déplace l'instruction juste avant la première condition.
    A remarquer que la condition "If MsgBox(Mid...." est là juste pour pouvoir arrêter le script au moment voulu.
    un grand à vous
    Donc le Problème est

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Algorithme lister tous les arrangements avec répétition
    Par akrogames dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 20/06/2014, 15h39
  2. Lister tous les résultats avec un COUNT, même les NULL ?
    Par epfyffer dans le forum Requêtes
    Réponses: 1
    Dernier message: 28/12/2012, 11h39
  3. Lister processus lancé avec leurs chemins
    Par Hrissa8 dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/06/2012, 18h09
  4. lister tous les fichiers avec des différences entre deux répertoires.
    Par contremaitre dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 13/03/2008, 15h24
  5. Lister les process avec leurs arguments
    Par jamfr73 dans le forum MFC
    Réponses: 5
    Dernier message: 23/12/2004, 10h54

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