Login et mot de passe
manonfire02
Messages postés
40
Statut
Membre
-
holow1 Messages postés 739 Statut Membre -
holow1 Messages postés 739 Statut Membre -
bonjour;
je réalise une application en VB.net et je dois tester sur un login et un mot de passe pour me connecter à l'application et ce login et ce mot de passe sont enregistrés dans une fichier.txt voila mon code:
Dim f As New FileStream("d:\mp.txt", FileMode.Open, FileAccess.Read)
Dim reg As New StreamReader(f)
Dim ligne As String = reg.ReadLine()
Dim tab() As String = ligne.Split("/")
While ligne <> Nothing
If tab(0) = ligne And tab(1) = ligne Then
Me.Hide()
Form2.Show()
End If
reg.Close()
f.Close()
End While
ce code ne marche pas alors comment dois je procéder .c'est urgent
je réalise une application en VB.net et je dois tester sur un login et un mot de passe pour me connecter à l'application et ce login et ce mot de passe sont enregistrés dans une fichier.txt voila mon code:
Dim f As New FileStream("d:\mp.txt", FileMode.Open, FileAccess.Read)
Dim reg As New StreamReader(f)
Dim ligne As String = reg.ReadLine()
Dim tab() As String = ligne.Split("/")
While ligne <> Nothing
If tab(0) = ligne And tab(1) = ligne Then
Me.Hide()
Form2.Show()
End If
reg.Close()
f.Close()
End While
ce code ne marche pas alors comment dois je procéder .c'est urgent
A voir également:
- Login et mot de passe
- Mot de passe bios perdu - Guide
- Trousseau mot de passe iphone - Guide
- Mot de passe administrateur oublié - Guide
- Réinitialiser pc sans mot de passe - Guide
- Generateur mot de passe - Télécharger - Sécurité
2 réponses
Bonjour Manonfire02,
1- Le test principal est sans doute faux :
En effet :
tab(0) prend pour valeur la sous-chaine de ligne du caractère 0 jusqu'au caractère avant le /
tab(1) prend pour valeur la sous-chaine de ligne du caractère après / jusqu'au dernier caractère de ligne
2- Je pense qu'il y a une erreur aussi dans ton algo :
Comparer tab et ligne ne sert à rien. En fait il faut que tu compares tab(0) et tab(1) issus de ton fichier de mots de passe à des valeurs saisies par l'utilisateur dans un formulaire.
voila mon algo (je ne sais pas programmer en VB.net, désolé) :
où LoginSaisi et MotDePasseSaisi sont les valeurs contenues dans des champs de saisie d'un formulaire d'identification.
Remarque : attention à la fermeture de reg et de f : si tu fais cette opération dans le while, tu compileras certes mais si ton fichier contient plus d'une ligne, tu devrais avoir une Fatal error à l'exécution car le While va chercher à lire une nouvelle ligne alors que tu as déjà fermé le stream et le fichier.
Bon courage
Cordialement,
BG.
1- Le test principal est sans doute faux :
If tab(0) = ligne And tab(1) = ligne Then
En effet :
tab(0) prend pour valeur la sous-chaine de ligne du caractère 0 jusqu'au caractère avant le /
tab(1) prend pour valeur la sous-chaine de ligne du caractère après / jusqu'au dernier caractère de ligne
2- Je pense qu'il y a une erreur aussi dans ton algo :
Comparer tab et ligne ne sert à rien. En fait il faut que tu compares tab(0) et tab(1) issus de ton fichier de mots de passe à des valeurs saisies par l'utilisateur dans un formulaire.
voila mon algo (je ne sais pas programmer en VB.net, désolé) :
Dim f As New FileStream("d:\mp.txt", FileMode.Open, FileAccess.Read)
Dim reg As New StreamReader(f)
Dim ligne As String = reg.ReadLine()
Dim tab() As String = ligne.Split("/")
While ligne <> Nothing
If tab(0) = loginSasis And tab(1) = MotDePasseSaisi Then
Me.Hide()
Form2.Show()
End If
End While
reg.Close()
f.Close()
où LoginSaisi et MotDePasseSaisi sont les valeurs contenues dans des champs de saisie d'un formulaire d'identification.
Remarque : attention à la fermeture de reg et de f : si tu fais cette opération dans le while, tu compileras certes mais si ton fichier contient plus d'une ligne, tu devrais avoir une Fatal error à l'exécution car le While va chercher à lire une nouvelle ligne alors que tu as déjà fermé le stream et le fichier.
Bon courage
Cordialement,
BG.
Je te rappelle que je ne t'ai pas donné le code à mettre dans ton programme : je t'ai seulement corrigé l'algo. Je te rappelle que je ne connais pas le langage VB.net et donc je ne pourrais que te donner des pistes de réflexion.
Donnes-nous la solution que tu as mise en place pour corriger ta première version.