Batcher avec mot de passe

Fermé
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010 - 14 janv. 2010 à 11:10
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 15 janv. 2010 à 07:35
Bonjour,
là vraiment besoin de votre aide, je suis en 1ere année informatique, et je suis entrain de preparer un projet batch, je suis bloquer sur l'etape qui demande à l'utulisateur de rentrer un mot de passe et à la troisieme tentative on doit quittez le programme, mon projet devra finir aujourdhui svp

20 réponses

rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 12:15
personne n'est interess駧§§§!!!!!!!!!!
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 12:54
svp c'est tres importants
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 14:06
hello
essaye:
@echo off 

setlocal enableDelayedExpansion
set mdp=aaaaa
for /L %%a in (1,1,3) do (
set /p m=entrez le mot de passe: 
if !m! == %mdp% goto fin
)
echo erreur
exit /b
:fin
echo ok
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 14:53
rebonjour
merci d'étre avec moi je vais tester ce code et je te reponds tout de suite
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 15:03
oui ça marche merci infinement si ça te derange pas tu peux m'expliquer ce que signifie ce code je sais que c'est fatiguant avec un debutant, je sais que for c'est pr creer une boucle mais les autres parametres nom
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 15:19
@echo off 

rem on active l'expansion retardée des variables d'environnement 
rem nécessaire pour assigner des variables dans une boucle for
setlocal enableDelayedExpansion
rem on definit la variable mdp avec la valeur aaaaa
set mdp=aaaaa
rem on boucle de 1 à 3
for /L %%a in (1,1,3) do (
rem on lit la variable m en posant la question
set /p m=entrez le mot de passe: 
rem si m est égale à mdp on saute au label :fin
if !m! == %mdp% goto fin
)
rem sinon on affiche une erreur
echo erreur
exit /b
:fin
echo ok
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 15:27
quand on boucle prq on a pas mis 123 au lieu de 113 ça d'une part et d'autre part est ce que c'est tjrs par setlocal enableDelayedExpansion quand cree des compteurs
je te remercie infirnement tu m'as vraiment servie je peux avoir ton émail ou cas ou j'ai besoin de toi car vraiment je suis tombé sur un prof de sys qui ......
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 15:38
c'est tjrs par setlocal enableDelayedExpansion quand cree des compteurs
oui si on est dans une boucle for

dans le help de for
for /L {%% | %}variable in (débutt#,incrément#,fin#) do commande [OptionsLigneCommande]
mais on pourrait faire autrement avec 1 2 3
for /F ["MotsClésAnalyse"] {%% | %}variable in ("ChaîneLittérale") do commande [OptionsLigneCommande]
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 15:42
s'agissant du mot de passe, est il possible de demander à l'utulisateur de mettre un mot de passe de 4 chiffres et que ces chiffres là soient limité entre 0 et 6 sinon le code sera erroné
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 15:47
oui, mais en bat, ça devient compliqué, le bat est très limité
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 15:51
merci beaucoup dubceq franchement tu m'a beaucoup servi est ce que tu connais une url ou je peux m'ameliorer en batch ou il y a des exercices corrigé
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 15:55
regarde là http://www.hotline-pc.org/batch.htm#
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 15:58
bien reçu merci chef je vais essayer de monter mon petit projet vers la fin de la journée rt s'il ya un prb je te met au courant ok enfin si ti sera disponible
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 16:34
excuse moi mais là ou je dois mettre mon mot de passe car quelque soit le mot de passe ça me le demande à 3 reprise


@echo off

setlocal enableDelayedExpansion
set mdp=aaaaa
for /L %%m in (1,1,3) do (
set /p m=entrez le mot de passe:
if !m! == %salut% goto fin
)
echo erreur
exit /b
:fin
echo ok

pause>nul
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 16:41
stp t es tjrs là
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 janv. 2010 à 16:45
dans la variable mdp
set mdp=salut
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 17:04
si tu veux dire comme ça, j'ai testé mais ça me fait la méme chose

@echo off

setlocal enableDelayedExpansion
set mdp=salut
for /L %%m in (1,1,3) do (
set /p m=entrez le mot de passe:
if !m! == %% goto fin
)
echo erreur
exit /b
:fin
echo ok
pause>nul
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 17:14
je veux mettre le mot de passe salut par exemple
0
rabihfad Messages postés 33 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 23 janvier 2010
14 janv. 2010 à 17:55
t'es partis
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
15 janv. 2010 à 07:35
il manque le nom de la variable entre %%
if !m! == %mdp% goto fin
0