Générateur de mot de passe

Soyez le premier à donner votre avis sur cette source.

Vue 7 475 fois - Téléchargée 925 fois

Description

Un simple générateur de mot de passe pouvant générer des mots de passe de 4 à 15 caractères avec la possibilité de mélanger majuscules et minuscules.

Source / Exemple :


Dim PasswdGen As String 'Contient le mot de passe générer
Dim cur_char As String 'Caractère courant
Dim caracter As Variant 'Tableau des caractères

Private Sub cmdGen_Click()
    'On vérifie si l'utilisateur a décidé la longueur souhaiter pour le mot de passe
    If cboNbrchar.Text = "" Then 'Si l'utilisateur n'a pas choisi dans la liste on affiche un message
        MsgBox "Veuillez choisir le nombre de caractère que vous désirez.", vbExclamation, "Erreur!"
        Exit Sub 'On sort du sub
    End If
        
    txtPasswd.Text = "" 'On efface le txt d'affichage du pass
    
    'Définition de la table des caractères
    caracter = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", _
    "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", _
    "v", "w", "x", "y", "z")
    
    PasswdGen = "" 'On efface le pass en mémoire
    
    Dim i As Byte
    
    For i = 0 To cboNbrchar.ListIndex + 3 'On boucle selon le nombre de caractere voulu pour former le passwd
        Randomize 'Initialisation du moteur de hasard
        cur_char = caracter(Int(Rnd * 36))

        If chkMinmaj.Value = 1 Then 'Si l'utilisateur a décidé de mélanger les lettres MAJ et Min
            If (Int(Rnd * 2) + 1) = 2 Then
                cur_char = UCase(cur_char)
            End If
        End If
        PasswdGen = PasswdGen & cur_char 'On ajoute le caractère au mot de passe
    Next i
    txtPasswd.Text = PasswdGen 'On affiche le mot de passe
End Sub

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_blabla
Messages postés
112
Date d'inscription
mercredi 28 août 2002
Statut
Membre
Dernière intervention
13 mars 2004
-
Voila ce que j appel de la souce bien commenter ! 9/10
ram2000
Messages postés
4
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2004
-
Arf ouais je sais, je l'ai fait exprès pour que ce soit facile à comprendre :)
cs_T0x1K
Messages postés
261
Date d'inscription
dimanche 6 avril 2003
Statut
Membre
Dernière intervention
12 janvier 2010
-
Tu pourrait m'expliquer comment on l utilise stp?
ram2000
Messages postés
4
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2004
-
C'est bien que tu es poster ce commentaire car tu viens de me faire réaliser que j'avais oublier de mettre l'exécutable dans l'archive! J'ai donc modifier le zip en y incluant le programme compiler. Retélécharge l'archive et donne moi en des nouvelles à savoir si ta compris le fonctionnement ;)
cs_T-Rex
Messages postés
5
Date d'inscription
dimanche 1 avril 2001
Statut
Membre
Dernière intervention
27 mai 2004
-
Ce code est tres pratique, je l'ais tranformé en fonction en vue d'une utilisation (protection) dans mes applis:

Public Function GenPass(NbChar As Integer, Optional MinAndMaj As Boolean = False) As String
Dim caracter As String 'Contient le caractère qui sera ajouté au mot de passe
Dim Chiffre As String 'Contient le numéros du caractère
Dim chle As Byte 'Définit si on sélection un chiffre ou une lettre
Dim MajMin As Byte 'Définit si le caractère sera en majuscule ou non
Dim i As Byte 'On déclare une variable pour la boucle

For i = 1 To NbChar 'On boucle selon le nombre de caractere voulu pour former le passwd
Randomize 'Initialisation du moteur de hasard
chle Int(Rnd * 2) + 1 'On choisi entre les chiffres et lettre 1 chiffre et 2 = lettre
If chle 1 Then 'Si chle 1 on choisi une lettre
Chiffre = Int(Rnd * 9) + 48
caracter = Chr(Chiffre) 'On enregistre cette lettre
Else 'Sinon chle = 2, donc on choisi un chiffre
Chiffre = Int(Rnd * 26) + 97
caracter = Chr(Chiffre) 'On enregistre ce chiffre
End If
If MinAndMaj = True Then 'Si l'utilisateur a décidé de mélanger les lettres MAJ et Min
MajMin = Int(Rnd * 2) + 1 'On décide si la prochaine lettre sera MAJ ou MIN
If MajMin = 2 Then 'Si elle est MAJ on fait un UCase
caracter = UCase(caracter) 'On met en majuscule le caractère
End If
End If
GenPass = GenPass & caracter 'On ajoute le caractère au mot de passe
Next i

End Function

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.