Killer + Lancer une application via un script

Bonjour,

je cherche actuellement un script permettant de killer et relancer une application qui se trouve sur un serveur win2003.
Ce script doit pouvoir être lancé par un utilisateur lambda.

Actuellement, nous utilisons psTools (n ensemble d'outils en lignes de commandes permettant d'administrer Windows NT et 2000, aussi bien en réseau qu'en local).
Malheureusement, depuis notre changement d''antivirus, ce dernier bloque l'outil, pstools qui nous était jusqu'alors bien utile.

Du coup je cherche actuellement un moyen de substitution permettant de réaliser la même chose, sans utilisé d'utilitaire. (en gros tout cela doit à priori se faire par le systeme)

Merci d'avance pour votre aide.

3 réponses

  1. Bonjour,

    S'il s'agit d'un Service :

    Pour l'arrêt :

    '---------------------------------------------------------------------------------------------------
    '
    ' Fichier VBScript : "Stop Service.vbs"
    '
    ' Démarrage du service NomService sur [ Serveur ]
    '---------------------------------------------------------------------------------------------------
    '
    
      Dim objWMIService, objService, colServiceList
      Dim Ordinateur, objReseau, Reponse
    
      Set objReseau = CreateObject("WScript.Network")
      Ordinateur = LCase(objReseau.ComputerName)
    
      Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & Ordinateur & "\root\cimv2")
      Set colServiceList = objWMIService.ExecQuery("Select * from Win32_Service where Name='Service'")
    
      For Each objService In colServiceList
        If (objService.Name = "Service") Then
          Reponse = objService.StopService()
        End If
      Next
    
      Set objReseau = Nothing
      Set objWMIService = Nothing
      Set colServiceList = Nothing
    
    WScript.Quit(0)
    


    Pour le démarrage :

    '---------------------------------------------------------------------------------------------------
    '
    ' Fichier VBScript : "Start Service.vbs"
    '
    ' Démarrage du service NomService sur [ Serveur ]
    '---------------------------------------------------------------------------------------------------
    '
        
      Dim objWMIService, objService, colServiceList
      Dim Ordinateur, objReseau, Reponse
    
      Set objReseau = CreateObject("WScript.Network")
      Ordinateur = LCase(objReseau.ComputerName)
    
        
      Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & Ordinateur & "\root\cimv2")
      Set colServiceList = objWMIService.ExecQuery("Select * from Win32_Service where Name='Service'")
    
      For Each objService In colServiceList
        If (objService.Name = "NomService") Then
          Reponse = objService.StartService()
        End If
      Next
    
      Set objReseau = Nothing
      Set objWMIService = Nothing
      Set colServiceList = Nothing
    
    WScript.Quit(0)
    


    Remplacer le mot "NomService" par le nom du service.

    Cdt

    Lupin
    1. A vrai dire il s'agit d'un processus ".exe", permettant de récupérer des numéros de codes bars.
      Du coup, pas un service.
      Saurais-tu si cela fonctionnerait tout de même ?

      Merci d'avance,

      Configuration: Windows 7 / Internet Explorer 9.0
      1. re:

        Pour Killer le processus :

        ici -> [ iexplorer.exe ]

        Dim objWMIService, colProcessList, objProcess
        
        Set objWMIService = GetObject("winmgmts:" _
            & "{impersonationLevel=impersonate}!\\.\root\cimv2")
        
        Set colProcessList = objWMIService.ExecQuery _
            ("Select * from Win32_Process Where Name = 'iexplore.exe'")
        
        For Each objProcess in colProcessList
        	objProcess.Terminate()
        Next
        
        Set objWMIService = Nothing
        Set colProcessList = Nothing
        
        WScript.Quit(0)
        


        Pour lancer le processus :

        Set objShell = CreateObject("WScript.Shell")
        
        objShell.Run "iexplorer.exe"
        
        Set objShell = Nothing
        
        WScript.Quit(0)
        


        n.b. Si le programme n'est pas connu de windows,
        (i.e. pas dans le path connu)

        Il te faut spécifier le chemin complet lors du lancement :

        objShell.Run "C:\Test\MonProgramme.exe"

        Cdt

        Lupin