Script BATCH Supression TSE

Bonjour à tous,

je souhaite créer un script qui permette à des utilisateurs de supprimer une session tse en la saisissant.

Si celle n'existe pas, j'aimerai leur proposer de retaper le nom de la session ou bien sortir du logiciel.

J'ai commencé à ecrire le script, mais je bloque sur la commande query session qui me renvoie toujours le code de sortie 1. Ce qui fait que je ne peux pas utiliser ma condition. (if not errorlevel 1 goto FIN else if goto SUITE)

Avez-vous une idée ?

Merci de votre aide

Ci dessous le detail du script :

@echo off
net use \\"AdresseIP"\ipc$ "MDP" /user:"Utilisateur"
cls
@echo.
@echo off

:debut
cls
@echo.
set /p session=Veuillez entrer la session que vous souhaitez supprimer ?
query session %session% /SERVER:"AdresseIP"

@echo off
if not errorlevel 1 goto FIN else if goto SUITE
cls

:FIN
@echo.
Echo La session %session% n'existe pas.
@echo.

choice /M "Voulez vous retaper un nom de session ?
if errorlevel 2 goto fin
if errorlevel 1 goto begin

:begin
goto debut

:quit
goto fin

:FIN
@echo.
Echo Le programme va maintenant s'arreter.
@echo.
pause
exit

:SUITE
@echo.
set /p ID=Tapez le numero d'ID correspondant a la session :
@echo.
echo Vous êtes sur le point de reinitialiser la session %ID%...
reset session %ID% /server:"AdressIP"
La session %ID% est maintenant supprimée.
pause
Configuration: Windows XP Internet Explorer 7.0

4 réponses

  1. Bonjour Xavstarblues,

    Idem.... j'ai mis %errorlevel% après la commande query session .... et le code de sortie est toujours 1, même si la session n'existe pas....
    1. Contributeur
      J'ai corrigé deux/trois ptites choses (else if, label inutile)
      dis moi ce que ca donne

      @echo off
      net use \\"AdresseIP"\ipc$ "MDP" /user:"Utilisateur"
      cls
      echo.

      :debut
      cls
      echo.
      set /p session=Veuillez entrer la session que vous souhaitez supprimer ?
      query session %session% /SERVER:"AdresseIP"

      if not errorlevel 1 goto END else goto SUITE
      cls

      :END
      echo.
      Echo La session %session% n'existe pas.
      echo.

      choice /M "Voulez vous retaper un nom de session ?
      if errorlevel 2 goto FIN
      if errorlevel 1 goto debut

      :FIN
      echo.
      Echo Le programme va maintenant s'arreter.
      echo.
      pause
      exit

      :SUITE
      echo.
      set /p ID=Tapez le numero d'ID correspondant a la session :
      echo.
      echo Vous êtes sur le point de reinitialiser la session %ID%...
      reset session %ID% /server:"AdressIP"
      La session %ID% est maintenant supprimée.
      pause
      1. Bonjour,

        je suis debutant en script... j'ai corrigé mon erreur ... La commande query session sert à lister les sessions tse sur un serveur TSE afin d'identitier leur ID pour ensuite les supprimer avec la commande reset session.

        Le code corrigé :

        @echo off
        net use \\"AdresseIP"\ipc$ "MDP" /user:"Utilisateur"
        cls
        echo.

        :debut
        cls
        echo.
        set /p session=Veuillez entrer la session que vous souhaitez supprimer ?
        query session %session% /SERVER:"AdresseIP"

        if not errorlevel 1 goto END else if goto SUITE
        cls

        :END
        echo.
        Echo La session %session% n'existe pas.
        echo.

        choice /M "Voulez vous retaper un nom de session ?
        if errorlevel 2 goto quit
        if errorlevel 1 goto begin

        :begin
        goto debut

        :quit
        goto fin

        :FIN
        echo.
        Echo Le programme va maintenant s'arreter.
        echo.
        pause
        exit

        :SUITE
        echo.
        set /p ID=Tapez le numero d'ID correspondant a la session :
        echo.
        echo Vous êtes sur le point de reinitialiser la session %ID%...
        reset session %ID% /server:"AdressIP"
        La session %ID% est maintenant supprimée.
        pause
        1. J'ai trouvé cette commande sur ce lien :

          http://www.laboratoire-microsoft.org/articles/network/reinit_ts_sessions/

          La commande fonctionne bien, mais j'ai l'impression que son code de sortie est toujours le même donc il ne prend pas en compte ma condition......

          Help.... please
      2. Contributeur
        Salut,
        1ere chose,
        un seul @echo off en début de programme suffit
        pas besoin des autres et pas besoin des @ devant les echos.
        d'ou sort ta commande query?

        tu as deux label :FIN aussi, c'est pas bon