Script BATCH Supression TSE

boudha74 Messages postés 17 Date d'inscription   Statut Membre Dernière intervention   -  
boudha74 Messages postés 17 Date d'inscription   Statut Membre Dernière intervention   -
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. Xavstarblues Messages postés 10585 Date d'inscription   Statut Contributeur Dernière intervention   1 858
     
    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
    0
  2. boudha74 Messages postés 17 Date d'inscription   Statut Membre Dernière intervention  
     
    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
    0
    1. boudha74 Messages postés 17 Date d'inscription   Statut Membre Dernière intervention  
       
      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
      0
  3. Xavstarblues Messages postés 10585 Date d'inscription   Statut Contributeur Dernière intervention   1 858
     
    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
    0
  4. boudha74 Messages postés 17 Date d'inscription   Statut Membre Dernière intervention  
     
    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....
    0