I'm doing this post because my app doesn't work on other computers but works on mine as well as another developer's computer.
I published the installation on a server, users download and then launch the application but when they enter their login and password, it shows that the login credentials are bad even though I'm sure they are good since I have looked in the database.
And I repeat myself but the application only works well on another developer's pc.
I have no idea where this can come from so if you have any ideas I'm interested.
Here is the code to authenticate
'Paramêtres de connexion à la DB
Private ReadOnly strConn As String = "Server=" & My.Settings.nomServeur & "; DataBase= " & My.Settings.nomBDD & "; Uid=" & My.Settings.idUser & "; Pwd=" & My.Settings.mdp & "; Integrated Security=SSPI;"
Private Sub BtnConnexion_Click(sender As Object, e As EventArgs) Handles btnConnexion.Click
'Si le login ou le mot de passe est vide alors afficher un message d'erreur
If tbLogin.Text = Nothing Or tbMdp.Text = Nothing Then
'Affichage d'un message d'erreur
ErrorMessage("Merci de remplir tous les champs")
'Quitte la fonction
Exit Sub
Else
'Création d'une requête sql qui récupère les données de l'utilisateur grâce à son login et mot de passe
strSql = "select * from utilisateur where login = '" & tbLogin.Text & "' and mdp = '" & tbMdp.Text & "'"
'Initialisation de variables
Dim user, compta, directeur, admin As String
user = ""
compta = ""
directeur = ""
admin = ""
Try
'Création de la connexion
ObjetConnection = New SqlConnection(strConn)
'Création de la commande
ObjetCommand = ObjetConnection.CreateCommand()
'Affectation de la requête sql dans la commande
ObjetCommand.CommandText = strSql
'Ouverture de la connexion
ObjetConnection.Open()
'permet de récupérer les résultats d'une requete sql qui contient Count, avg, max, min, sum
Dim myReader As SqlDataReader
'Exécution de la requête
myReader = ObjetCommand.ExecuteReader()
'Lecture de toutes les lignes du résultat de la requête
Do While myReader.Read()
'Récupération des données de la ligne du résultat de la requête
user = myReader.GetValue(7).ToString()
compta = myReader.GetValue(8).ToString()
directeur = myReader.GetValue(9).ToString()
admin = myReader.GetValue(10).ToString()
Loop
'Si l'admin est à 1 alors l'utilisateur est un admin et affiché la page de gestion des modules
If Int(admin) = 1 Then
'Affichage de la page de gestion des modules
GestionModules.Show()
'Rend invisible la page actuelle (Authentification)
Me.Visible = False
End If
'Si l'utilisateur est à 1 et tous les autres rôles sont à 0 alors
If user = 1 And admin = 0 And compta = 0 And directeur = 0 Then
'Affichage de la page de création de l'entete
CreationEntete.Show()
'Rend invisible la page actuelle (Authentification)
Me.Visible = False
End If
'Si la compta est à 1 et l'admin est à 0 alors l'utilisateur fait parti de la compta
If compta = 1 And admin = 0 And directeur = 0 Then
'Affichage de la page de gestion des modules
GestionModules.Show()
'Rend invisible la page actuelle (Authentification)
Me.Visible = False
End If
'Si le directeur est à 1 et l'admin est à 0 alors l'utilisateur est le directeur
If directeur = 1 And admin = 0 And compta = 0 Then
'Affichage de la page de gestion des modules
GestionModules.Show()
'Rend invisible la page actuelle (Authentification)
Me.Visible = False
End If
'Fermeture de la connexion
ObjetConnection.Close()
Catch ex As Exception
'Affichage d'un message d'erreur
ErrorMessage("Erreur le mot de passe ou login est incorrect")
End Try
End If
End Sub
i found, the problem was with the connection line. Here is the new connection.
Public strConn As String = "Data Source=" + My.Settings.nomServeur + ";Initial Catalog=" + My.Settings.nomBDD + ";User ID=" + My.Settings.idUser + ";Password=" + My.Settings.mdp + ""
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.