Partage
  • Partager sur Facebook
  • Partager sur Twitter

Batch - arrêter / démarrer des services

?? Problème bizarre ??

    11 octobre 2018 à 23:38:57

    Salut ! 

    Alors voilà : je veux me faire un petit script pour arrêter des services sur mon PC (du genre Windows Update lors du démarrage du PC (merci Windows 10 --')) donc je l'ai écrit. Sauf que voilà : j'arrive même pas à passer le 1er 'goto'. Je m'explique : quand je rentre quelque var et j'appuis sur entrer, la fenêtre se ferme. 
    Ça fait 2h que je trouve pas la solution et si je continue à chercher je vais jeter mon ordi par la fenêtre.. 

    Voilà le début du code (donc la où ça marche pas) :

    @echo off
    @
    REM CONFIGURATION
    @
    title "Start & Stop Service"
    color F0
    setlocal
    set varstart = 'start'
    set varstop = 'stop'
    
    @
    REM MENU
    @
    :FIRST
    echo ============================================================
    echo.
    echo You want to strat or stop service ?
    echo.
    set /p var = "??? = "
    if "%var%" == "%varstart%" ( goto :XSTART )
    if "%var%" == "%varstop%" ( goto :STOP )
    if "%var%" != "%varstart%" if "%var%" != "%varstop%" (
    	cls
    	echo "Error - This is not the expected answer."
    	echo.
    	goto :FIRST
    )
    endlocal
    
    @ 
    REM MENU START
    @ 
    :XSTART
    
    ...
    
    @
    REM MENU STOP
    @
    :STOP
    
    ...



    Par la même occasion, est ce que ma 3ème condition (donc les 2 'if' cote à cote) ça marche ? Google me dit que oui.

    Merci d'avance à ceux qui se pencherons sur mon problème. J’espère que vous m'aiderai à trouver la solution :)

    -
    Edité par Best In Gold 11 octobre 2018 à 23:47:01

    • Partager sur Facebook
    • Partager sur Twitter

    M3inarD*

      12 octobre 2018 à 11:47:05

      Bonjour,

      Tu as des soucis de syntaxe :

      - ligne 8 et 9 : set varstart = 'start' -> set varstart=start (évite les espaces autour du signe '=' et pas besoin de guillemet car tu en met dans tes if)

      - ligne 19 : set /p var = "??? = " -> set /p var="??? = " (pareil qu'au dessus, ta variable se nommait "var " et non "var")

      - ligne 22 : Il faut remplacer l'opérateur '!=' qui n'existe pas par NEQ (différent de).

      Avec ça, tu devrait pouvoir avancer ;)

      • Partager sur Facebook
      • Partager sur Twitter
        18 octobre 2018 à 13:51:13

        Super ! Je corrigerai tous ça quand j'aurai le fichier devant les yeux. Merci beaucoup en tout cas ! ;)
        • Partager sur Facebook
        • Partager sur Twitter

        M3inarD*

          23 octobre 2018 à 0:00:18

          C'est bon ! Tout qui marche ! Merci encore Zaibai !
          • Partager sur Facebook
          • Partager sur Twitter

          M3inarD*

          Batch - arrêter / démarrer des services

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown