IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Coffre avec mot de passe (vers la version 2.0)


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Coffre avec mot de passe (vers la version 2.0)
    C'est encore moi qui cherche à améliorer un fichier de gestion de dossier-coffre avec mot de passe. Voici la version 1.3, elle-même améliorée par Hackoofr:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    @echo off
    title Coffre avec mot de passe ^| Version 1.3 (updated by Hackoofr)
    mode con cols=60 lines=20
    call :searchcpl
    if EXIST "Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}" goto saisiePass
    call :searchdir
    if NOT EXIST Coffre goto create
    reg query ""HKLM\SOFTWARE\Coffre"">Nul
    if %errorlevel%==1 goto pasdepass
    
    :confirm
    echo Voulez-vous verrouiller le dossier Coffre?(O/N)
    set /p "choix=>"
    if %choix%==O goto ferme
    if %choix%==o goto ferme
    if %choix%==n goto fin
    if %choix%==N goto fin
    echo Choix incorrect, veuillez r‚pondre Oui ou Non.
    goto confirm
    
    :ferme
    cls
    Color 9A
    ren Coffre "Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    attrib +h +s "Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    echo Dossier Coffre verouill‚.
    goto fin
    
    :SaisiePass
    echo Entrez le mot de passe du Dossier Coffre.
    set /p "passout=>"
    echo V‚rification du mot de passe en cours ....
    for /f "tokens=3" %%i in ('reg query ""HKLM\SOFTWARE\Coffre"" ^| find "MDP"') do set MDP=%%i
    if %passout%==%MDP% goto ouvre
    if NOT %passout%==%MDP% goto incorrect
    goto fin
    
    :pasdepass
    cls
    echo Aucun mot de passe n'est d‚fini.
    echo Veuillez d‚finir un mot de passe pour le dossier Coffre.
    set /p "newpass1=>"
    echo Veuillez confirmer de nouveau votre mot de passe
    set /p "newpass2=>"
    if "%newpass1%"=="%newpass2%" goto AjoutPassReg
    if Not "%newpass1%"=="%newpass2%" echo Les Deux mots de passes ne sont pas identiques ?
    PING 1.1.1.1 -n 1 -w 1000 >NUL
    goto pasdepass
    goto fin
    
    :AjoutPassReg
    reg Add ""HKLM\SOFTWARE\Coffre"" /v MDP /t REG_SZ /d %newpass2% > NUL
    goto ferme
    goto fin
    
    :incorrect
    cls
    Color BC & echo Mot de passe incorrect ? ? ?
    Goto Ping
    
    :create
    md Coffre
    echo Le dossier Coffre est cr‚‚.
    goto pasdepass
    
    :ouvre
    cls
    attrib -h -s "Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    ren "Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}" Coffre
    Color 9A
    echo Mot de passe est Correct !
    echo Le dossier Coffre est ouvert.
    PING 1.1.1.1 -n 1 -w 1000 >NUL
    Start Explorer c:\coffre
    exit
    
    :searchcpl
    cls
    echo Recherche de Coffre verrouill‚
    set /p drive=Sp‚cifiez un lecteur (une lettre suivie de deux-points):
    set /p path=Sp‚cifiez un chemin de recherche:
    set file="Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    dir %drive%%path%%file%>NUL
    goto :eof
    
    :searchdir
    cls
    echo Recherche de Coffre non verrouill‚
    set /p drive=Sp‚cifiez un lecteur (une lettre suivie de deux-points):
    set /p path=Sp‚cifiez un chemin de recherche:
    set dir=Coffre
    dir %drive%%path%%dir%>NUL
    goto :eof
    
    :Ping
    PING 1.1.1.1 -n 1 -w 1000 >NUL
    goto SaisiePass
    
    :fin
    pause
    L'idée serait, cette fois-ci, de séparer le batch du/des dossiers-coffres. Je précise du/des car il paraît possible qu'avec les fonctionnalités ainsi rajoutées, on puisse gérer, non plus UN coffre, mais PLUSIEURS. Est-ce possible? Si oui, comment?
    d'avance pour toute information susceptible d'être utile!

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut SearchCPL.bat

    Testez ce Batch en l’enregistrant sous SearchCPL.bat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    @echo off
    cls
    Title Recherche des Dossiers de type Coffre verrouill‚
    Color 9B
    mode con cols=60 lines=20
    echo Recherche du Coffre verrouill‚
    echo.
    set /p drive=Sp‚cifiez un lecteur (une lettre suivie de deux-points):
    set file="Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    echo.
    echo  La Recherche est en cours ....
    Dir %drive%\/s | find %file%
    echo.
    if exist recherche.txt Del recherche.txt
    echo  Enregistrement de l'emplacement des dossiers de type %file%
    Dir %drive%\/s | find %file% >> recherche.txt
    echo.
    cls
    Color 9A
    echo  La Recherche et la Sauvegarde sont termin‚es !
    echo Appuyez sur une touche pour ouvrir le fichier "Recherche.txt"
    pause>Nul
    Start recherche.txt
    Remarque : Il faut que le dossier Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D} soit non vide càd il contient des fichiers sinon la recherche échoue

  3. #3
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo  La Recherche est en cours ....
    Dir %drive%\/s | find %file%
    Pourriez-vous m'expliquer cette syntaxe, en particulier la présence d'un demi-slash dans cette ligne?

    Remarque : Il faut que le dossier Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D} soit non vide càd il contient des fichiers sinon la recherche échoue
    Chez moi, la recherche échoue, que ce soit avec un coffre plein ou vide.
    D'où un tel bug peut-il venir?
    Comment le réparer???

  4. #4
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut Le symbole de redirection "|"
    Citation Envoyé par Divarius Voir le message
    Pourriez-vous m'expliquer cette syntaxe, en particulier la présence d'un demi-slash dans cette ligne?

    Ce caractère de redirection "|", appelé " Pipe " (canal, tuyau) en anglais permet de rediriger la sortie d’une commande vers l’entrée d’une autre.
    Ce caractère s’obtient en maintenant la touche ALT enfoncé en tapant 124 au clavier (ou AltGr + 6).
    Prenons un exemple bien connu : en tapant " DEL *.* " afin d’effacer le contenu d’un répertoire, un message de confirmation apparaît, demandant l’appui sur la touche " o " (pour OUI) pour continuer. Il serait intéressant de supprimer ce message de confirmation qui interrompt le déroulement d‘un batch, afin que la commande s’exécute " toute seule " sans besoin d’une validation quelconque de l’utilisateur.
    La commande suivante permet de résoudre ce problème :
    La " sortie " de la commande echo (le caractère " o ") est envoyée vers " l’entrée " de la commande DEL. Lorsque le message sera affiché, MS-DOS considèrera le caractère reçu comme une réponse au message et continuera l’exécution du batch.
    Dans notre cas, ce sera comme une " validation " à la question " Pressez o pour continuer, n pour annuler ".

    On retrouve aussi ce caractère dans l’utilisation quotidienne du DOS : le fait d’accoler " |more " à une commande standard permet que son résultat, s’il prend plusieurs écrans, ne soit pas affiché d’un coup mais en autant de fois qu’il le faut pour faciliter la lecture. Ainsi, testez sous DOS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CD %WINDIR% 
    DIR *.*|MORE 
    La liste sera affichée en plusieurs fois : à chaque écran, le DOS vous demande de presser une touche pour continuer le défilement.

    Maintenant A votre avis que fait la commande suivante ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dir %drive%\/s | find %file%

  5. #5
    Invité
    Invité(e)
    Par défaut
    ALLELUIA! J'AI COMPRIS VOTRE IDEE!
    La syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dir %drive%\/s | find %file%
    renvoie la sortie de la commande vers l'entrée la commande
    Malheureusement, cela ne me donne pas le pourquoi du bug rencontré tantôt:
    Chez moi, la recherche échoue, que ce soit avec un coffre plein ou vide.
    D'où un tel bug peut-il venir?
    Comment le réparer???
    Dernière modification par Invité ; 27/07/2012 à 18h43.

  6. #6
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Testez ce Batch :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    @echo off
    set Dossier="Control Panel.{2227A280-3AEA-1069-A2DE-08002B30309D}"
    Title Recherche des Dossiers de type %Dossier%
    Color 9B
    mode con cols=65 lines=10
    echo *****************************************************************
    echo Recherche %Dossier%
    echo.
    echo *****************************************************************
    echo.
    set /p drive=Sp‚cifiez un lecteur (une lettre suivie de deux-points):
    echo.
    cls
    if exist recherche.txt Del recherche.txt
    echo *****************************************************************
    echo     La Recherche est en cours sur le Lecteur "%drive%\" .......
    echo.
    echo *****************************************************************
    Dir %drive%\ /s /b /ad | find %Dossier% >> recherche.txt
    echo.
    cls
    Color 9A
    echo *****************************************************************
    echo         La Recherche et la Sauvegarde sont termin‚es !
    echo.
    echo *****************************************************************
    echo.
    echo Appuyez sur une touche pour ouvrir le fichier "Recherche.txt"
    pause>Nul
    Notepad recherche.txt
    Exit

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/04/2015, 14h35
  2. [Batch] Coffre avec mot de passe
    Par Invité dans le forum Scripts/Batch
    Réponses: 11
    Dernier message: 01/02/2015, 15h18
  3. [PHP 5.4] Export vers Excel avec mot de passe
    Par ngatech dans le forum Langage
    Réponses: 3
    Dernier message: 10/03/2014, 00h42
  4. acceder a un fichier avec mot de passe
    Par moa378 dans le forum Windows
    Réponses: 16
    Dernier message: 17/05/2005, 12h15
  5. [VB.NET] Fichier Excel vérouillé avec mot de passe
    Par rafano dans le forum ASP.NET
    Réponses: 2
    Dernier message: 10/06/2004, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo