Remplacer des caractères saisis par des "*"
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous !
Voilà, j'ai crée une minuscule programme MS DOS qui sert à lancer un programme si on saisit le bon mot de passe. Mon programme marche nickel sauf que je voudrais le compliquer un peu : j'aimerais que quand je saisisse le mot de passe dans le programme, les caractères soient remplacés par des "*" ou des "X", histoire de rendre le mot de passe un peu plus confidentiel...
Sauriez-vous comment faire ?
Merci à tous ceux qui pourront m'aider.
;)
Voilà, j'ai crée une minuscule programme MS DOS qui sert à lancer un programme si on saisit le bon mot de passe. Mon programme marche nickel sauf que je voudrais le compliquer un peu : j'aimerais que quand je saisisse le mot de passe dans le programme, les caractères soient remplacés par des "*" ou des "X", histoire de rendre le mot de passe un peu plus confidentiel...
Sauriez-vous comment faire ?
Merci à tous ceux qui pourront m'aider.
;)
2 réponses
-
Tu as posté dans la catégorie "Forum > Programmation"
Donc, tu code en quel langage ?
-
Quel étourdi ! C'est sur que si je ne met pas le langage avec lequel je code, ça n'ira pas.
Je code donc en MS DOS car c'est un tout petit programme de contrôle de mot de passe. Mon programme ressemble à ça :
@ECHO OFF
:AFF
echo Veuillez saisir votre mot de passe :
set/p "pass=>"
if NOT %pass%== 1234 goto FAIL
goto PROG
:FAIL
cls
echo Le mot de passe est incorrect
goto AFF
:PROG
cls
echo CONNEXION...
start D:\StockExpress
exit
Et j'aimerais donc que, quand je saisisse "1234" (qui est le bon mot de passe), la fenêtre DOS ne m'affiche que "XXXX".
Est-ce possible ? -
-
-
Bonjour à tous !
sachadee sur le forum développez.net m'a créé un petit programme 100 % BAT de contrôle de mot de passe et QUI REMPLACE LES CARACTERES "NORMAUX" PAR DES "*".
Le voici, à vous de modifier le texte, le mot de passe... :
@echo off&cls
::Le Mot de Passe
set "$Mdp=toto1234"
::La longeur du Mot de passe
set $Long=-1
for /F "delims=" %%c in ('cmd /D /U /C echo %$Mdp% ^| find /V ""') do (set /a $Long+=1)
::Les autres variables
set "$l="
set "$l1="
set "$C=0"
:test
if %$c%==%$Long% goto:Pastrouve
set "$T="
cls&echo Entrer votre MDP : %$l1%
For /F "delims=" %%# In ('Xcopy /W "%~f0" "%~f0" 2^>Nul') Do If Not Defined $T Set "$T=%%#"
set $testenter=%$T:~-1%
if not defined $Testenter goto:Pastrouve
if %$T:~-1%== (
if not %$C%==0 (
Set "$l=%$l:~0,-1%"
set "$l1=%$l1:~0,-1%"
set /a $C-=1)
) else (
Set "$l=%$l%%$T:~-1%"
set "$l1=%$l1%*"
set /a $C+=1)
if "%$l%"=="%$Mdp%" goto:trouve
goto:test
:trouve
echo bravo
exit/b
:Pastrouve
echo Pas trouv'
exit/b