Soucis avec fichier batch

Résolu
Bonjour,

Voila, je souhaiterais créer un fichier batch qui, lors qu'on l'exécute, pourrez lancer un logiciel si celui-ci n'est pas lancer.

J'ai trouver des trucs sur internet, mais rien ne fonctionne.

Voici ce que j'ai écrit pour le moment :

tasklist | find "mon_programme.exe" /C /i
cd "C:\Program Files\Dossier ou se trouve mon programme"
if "%ERRORLEVEL%"=="0" START /high mon_programme.exe
exit

Lors que je tape seul dans l'invite de commande MSDOS
cd "C:\Program Files\teamspeak3-server_win64"
j'obtient bien 1.
Mais il semblerais que ce 1 ne soit pas stocker dans %ERRORLEVEL% comme j'ai pu voir sur internet. => le batch relance sans cesse mon_programme.exe
Comment pouvoir stocker ce 1 dans une variable ?
Afin de dire par la suite si cette variable=0, alors lancer le programme ?

Merci d'avance pour vos réponses.

6 réponses

  1. set %variable
    ne fonctionne hélas pas
    ou alors je ne voies pas comment l'utiliser ici
    1. "set ma_variable = une_valeur" est la commande pour déclarer et initialiser une variable
    2. c'été suite à un commentaire que j'ai reçu qui à dut être supprimé.
  2. Contributeur
    hello
    peut-être que le ERRORLEVEL est celui du cd et pas de la commande tasklist... et inverser le test, 0 si find trouve quelque chose
    essayer
    cd "C:\Program Files\Dossier ou se trouve mon programme" 
    tasklist | find "mon_programme.exe" /C /i 
    if %ERRORLEVEL% NEQ 0 START /high mon_programme.exe 
    exit 
    
    1. Merci, mais oui je suis bête ^^
      J'aurais dut y penser !
      Sa fonctionne parfaitement maintenant.
      Merci beaucoup de votre aide, et excellente continuation à vous !
      1. Bonjour Matt25300,
        Peut-être comme ceci:
        cd "C:\Program Files\Dossier ou se trouve mon programme\"
        tasklist | find /C /i "mon_programme.exe"
        if "%ERRORLEVEL%"=="1" (
        START /high C:\Program Files\Dossier ou se trouve mon programme\mon_programme.exe echo "Je lance le programme ... patience !"
        ) else ( echo "Le programme est déjà exécuté !"
        )
        pause
        exit
        1. merci Heliotte, mais le post juste avant à déjà entièrement répondu à ma question (tu n'as pas dut le voir ^^).

          Merci tout de même du temps que tu m'as consacré :)