Comparaison simple de variable
Bonjour,
mon titre n'est pas forcement des plus explicite, mais je savais pas trop comment definir mon probleme.
Je suis débutant en VB, et je realise un petit logiciel dans le cadre de mon bac.
J'ai un fichier contentant des mot de passe, un par ligne, et je recois sur le port serie un code (lecteur de carte), et je dois comparer le code recu aux codes du fichier.
Le probleme c'est que ca marche uniquement avec le premier code de la liste :?
Voila mes deux bouts de codes :
Celui pour charger le fichier dans un tableau (je sais c'est pas du VB.net, mais j'ai du apprendre tout seul, et au début je savais pas tte les differences entre Vb.net et VB6)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| Private Sub Code_Load()
Dim lignes() As String = File.ReadAllLines("code.cry")
Dim currendata = lignes.Length
If Not (File.Exists("code.cry")) Then
MessageBox.Show("Base de donnée vide")
Me.Close()
End If
Try
' Crée l'objet pour l'encryptage
Dim Decrypteur As New ElgAESCrypt("mansart")
' Demande de décryptage du fichier A vers B
Decrypteur.DecrypterFichier("code.cry", "code.txt")
Catch ex As Exception
MessageBox.Show(ex.Message, "Decryptage", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
End Try
FileOpen(canal, "code.txt", OpenMode.Input)
For i As Integer = 0 To 2 'currendata - 1
DataCode(i) = LineInput(canal)
Next
FileClose(canal)
canal = FreeFile()
Kill("code.txt")
End Sub |
Et celle sencé faire la comparaison :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Private Sub Affiche(ByVal Texte As String)
donnees = Texte + Chr(13)
For i As integer =0 to DataCode.length -1
If donnees = DataCode(i) + Chr(13) Then
Label7.Text = "OUVERTE"
Dim ouverte As String
ouverte = "1" + Chr(13)
portRS232.Write(ouverte)
Else
Label7.Text = "FERME"
Dim ferme As String
ferme = "0" + Chr(13)
portRS232.Write(ferme)
End If
Next
End Sub |
Merci de votre aide.