Aide script pour vérrouiller mes fichiers

Résolu
dylgue Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je cherche à mettre en place un script qui verrouille et déverrouille un fichier (le cache simplement)
je me suis aidé d'un script facilement trouvable sur internet mais impossible de le faire fonctionner une fois modifier ^^'
je souhaiterais qu'il s'adapte suivant 3 mot de passe que l'on pourrait rentrer.

Merci d'avance :)

1 réponse

  1. phil2k Messages postés 10841 Date d'inscription   Statut Contributeur Dernière intervention   2 339
     
    Bonjour

    Peut etre parce que vous faites goto UNLOCK , et qu'il n'y a pas de :UNLOCK
    0
    1. dylgue Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci, c'est vrai que je n'avais pas vu qu'il manquait les 1,2,3 derrière :)

      Je n'arrive pas à savoir dans quelle ordre procéder pour faire fonctionner le programme de la sorte :

      - Demande de mot de passe pour s'authentifier
      - Si Mot de passe VALIDE on cherche si le dossier correspondant au MDP existe
      - On cherche soit : MontageX soit : Control.Panel.....

      - Si Control Panel existe -> on le déverrouille
      - Si c'est MontageX qui existe -> on le verrouille

      Auriez-vous une idée ?

      Merci beaucoup :)
      0
    2. dylgue Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
       
      j'ai donc fais ça :

      Configuration: 
      cls
      @ECHO OFF
      echo Entrez votre mot de passe :
      set/p "pass=>"
      if %pass%== 123 goto VERIF1
      if %pass%== 456 goto VERIF2
      if %pass%== 789 goto VERIF3
      :VERIF1
      title Folder Montage1
      if EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" goto UNLOCK1
      if Exist Montage1 goto LOCK1
      if NOT EXIST Montage1 goto FAIL
      :VERIF2
      title Folder Montage2
      if EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}" goto UNLOCK2
      if EXIST Montage2 goto LOCK2
      if NOT EXIST Montage2 goto FAIL
      :VERIF3
      title Folder Montage3
      if EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309F}" goto UNLOCK3
      if EXIST Montage3 goto LOCK3
      if NOT EXIST Montage3 goto FAIL


      :LOCK1
      ren Montage1 "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}"
      attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}"
      echo Folder locked
      goto End
      :LOCK2
      ren Montage2 "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}"
      attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}"
      echo Folder locked
      goto End
      :LOCK3
      ren Montage3 "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309F}"
      attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309F}"
      echo Folder locked
      goto End

      :UNLOCK1
      echo Entrer votre mot de passe pour debloquer le dossier
      set/p "pass=>"
      if %pass%== 123
      attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}"
      ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}" Montage1
      echo Montage3 deverouiller
      goto End
      :UNLOCK2
      echo Entrer votre mot de passe pour debloquer le dossier
      set/p "pass=>"
      if %pass%== 456
      attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}"
      ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}" Montage2
      echo Montage3 deverouiller
      goto End
      :UNLOCK3
      echo Entrer votre mot de passe pour debloquer le dossier
      set/p "pass=>"
      if %pass%== 789
      attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}"
      ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309E}" Montage3
      echo Montage3 deverouiller
      goto End

      :FAIL
      echo Invalid password
      goto end


      :End
      0
      1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930 > dylgue Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
         
        Bonjour,

        Voilà ton code en version optimisée :

        @ECHO OFF

        set dossier=Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309

        :authentification
        set pass=
        cls & echo Entrez votre mot de passe :
        set /p "pass = "

        if %pass%==123 (call :VERIF 1 D)
        if %pass%==456 (call :VERIF 2 E)
        if %pass%==789 (call :VERIF 3 F)

        goto :authentification

        :VERIF
        title Folder Montage%1
        if exist "%dossier%%2}" (call :UNLOCK %1 %2) else (
        if exist "Montage%1" (call :LOCK %1 %2))
        goto :eof

        :LOCK
        ren "Montage%1" "%dossier%%2}"
        attrib +h +s "%dossier%%2}"
        echo Folder locked
        goto :eof

        :UNLOCK
        attrib -h -s "%dossier%%2}"
        ren "%dossier%%2}" "Montage%1"
        echo Montage%1 déverrouillé
        goto :eof

        rem
        0