begin process at 2012 02 13 07:58:46
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > GÉNÉRATEUR DE MOT DE PASSE (TRÈS SIMPLE)

GÉNÉRATEUR DE MOT DE PASSE (TRÈS SIMPLE)


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Débutant Date de création :02/02/2004 Date de mise à jour :03/02/2004 19:22:00 Vu / téléchargé :4 061 / 687

Auteur : tomzan

Ecrire un message privé
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

permet de générer un mot de passe au nombre de lettres et de chiffres définissable et de le sauvegarder en fichier texte, le code est extrêmement simplet



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip TEXTBOX EN NUMÉRIQUE par 320C
Source avec Zip DÉCIMAL TO HEXDECIMAL par loulou27200
SOUS-TITRES : INCRÉMENTATION DE TOUTES LES CHAÎNES DE CARACT... par ALMIRA
Source avec Zip Source avec une capture EVALUER UN NOMBRE D'OBJETS AVEC UNE BALANCE ET DEUX ÉCHANTIL... par lexsty
Source avec Zip Source avec une capture PETIT LOGICIEL DE DEVIS SANS BD par lololilizozo

Commentaires et avis

Commentaire de blq le 30/05/2009 19:57:32 10/10

Le code est effective simple à comprendre. Il bien d'autres méthodes sur VBFrance, mais celle-ci permet à un débutant de comprendre le code. J'en profite donc pour proposer une variante, avec mise en majuscule de certaines lettres et mélange des lettres et des chiffres, toujours en utilisant la méthode Rnd.

Il s'agit d'une fonction à appeler. L'étape supplémentaire serait de supprimer la partie Select Case par un appel à la table de l'alphabet par son numéro :

Public Function GeneratePassword(ByVal nbCharacter As Integer, ByVal nbNumber As Integer) As String
    Dim valueNumber As Integer, charLetter As String
    Dim posNumber As Integer, ct As Integer
    
    
    GeneratePassword = vbNullString
    
    If nbCharacter <= 0 And nbNumber <= 0 Then Exit Function
    
    Call Randomize
    
    For ct = 1 To nbCharacter
        Select Case 1 + Int(26 * Rnd)
            Case 1
                charLetter = "a"
            Case 2
                charLetter = "b"
            Case 3
                charLetter = "c"
            Case 4
                charLetter = "d"
            Case 5
                charLetter = "e"
            Case 6
                charLetter = "f"
            Case 7
                charLetter = "g"
            Case 8
                charLetter = "h"
            Case 9
                charLetter = "i"
            Case 10
                charLetter = "j"
            Case 11
                charLetter = "k"
            Case 12
                charLetter = "l"
            Case 13
                charLetter = "m"
            Case 14
                charLetter = "n"
            Case 15
                charLetter = "o"
            Case 16
                charLetter = "p"
            Case 17
                charLetter = "q"
            Case 18
                charLetter = "r"
            Case 19
                charLetter = "s"
            Case 20
                charLetter = "t"
            Case 21
                charLetter = "u"
            Case 22
                charLetter = "v"
            Case 23
                charLetter = "w"
            Case 24
                charLetter = "x"
            Case 25
                charLetter = "y"
            Case 26
                charLetter = "z"
        End Select
        
        Call Randomize
        GeneratePassword = GeneratePassword & IIf(Int(6 * Rnd) > 3, UCase$(charLetter), charLetter)
    Next ct
    
    For ct = 1 To nbNumber
        valueNumber = Int(9 * Rnd)
        
        Call Randomize
        posNumber = Int(Len(GeneratePassword) * Rnd)
        
        If posNumber >= 0 And posNumber <= Len(GeneratePassword) Then
            GeneratePassword = Left$(GeneratePassword, posNumber) & valueNumber & Right$(GeneratePassword, Len(GeneratePassword) - posNumber)
        Else
            GeneratePassword = GeneratePassword & valueNumber
        End If
    Next ct
    
    ct = Int(Len(GeneratePassword) * Rnd)
End Function

Commentaire de blq le 30/05/2009 20:06:32

Toujours pour les débutant, voici la même fonction mais avec la suppression du Select Case, trop long et peu optimisé. Cette variante utilise un alphabet et la fonction Mid$. Tout ceci peut encore être amélioré pour réduire la taille du code :

Public Function GeneratePassword(ByVal nbCharacter As Integer, ByVal nbNumber As Integer) As String
    Dim valueNumber As Integer, charLetter As String
    Dim posNumber As Integer, ct As Integer
    
    
    GeneratePassword = vbNullString
    
    If nbCharacter <= 0 And nbNumber <= 0 Then Exit Function
    
    For ct = 1 To nbCharacter
        Call Randomize
        
        charLetter = Mid$("abcdefghijklmnopqrstuvwxyz", 1 + Int(26 * Rnd), 1)
        GeneratePassword = GeneratePassword & IIf(Int(6 * Rnd) > 3, UCase$(charLetter), charLetter)
    Next ct
    
    For ct = 1 To nbNumber
        valueNumber = Int(9 * Rnd)
        
        Call Randomize
        posNumber = Int(Len(GeneratePassword) * Rnd)
        
        If posNumber >= 0 And posNumber <= Len(GeneratePassword) Then
            GeneratePassword = Left$(GeneratePassword, posNumber) & valueNumber & Right$(GeneratePassword, Len(GeneratePassword) - posNumber)
        Else
            GeneratePassword = GeneratePassword & valueNumber
        End If
    Next ct
    
    ct = Int(Len(GeneratePassword) * Rnd)
End Function

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales