Chlochou Geschrieben 27. Februar 2012 Teilen Geschrieben 27. Februar 2012 Hallo miteinander! Mal wieder ein Problem zu dem ich einfach keine Lösung finde :S Habe ein Projekt bei dem man Benutzername und Passwort eingeben muss. Dazu hab ich auch im Internet einen Code gefunden und auf meine Daten angepasst. Jetzt kommt jedoch immer wenn ich ausführe folgender Fehler bzw. Meldung: Die Verbindung wurde nicht geschlsosen. Der aktuelle Status der Verbindung ist "Geöffnet". Habe noch Kommentare in den Code gepostet damit ihr vllt auch versteht wo ich nen Denkfehler oder was auch immer habe Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click Dim mypath = Application.StartupPath & "P:\garantieabwicklung.accdb" Dim Password = "" Dim conn As New OleDbConnection("Provider =" & "Microsoft.ACE.OLEDB.12.0;Data Source = P:\garantieabwicklung.accdb") Dim cmd As OleDbCommand 'Verbindungsdaten werden angegeben 'Abfrage ob die Daten in den Textboxen mit denen in der DB übereinstimmen Dim sql = "SELECT Username,Password FROM Login WHERE Username = '" & txtBenutzername.Text & "' AND Password = '" & txtPasswort.Text & "'" 'Verbindung öffnen conn.Open() cmd = New OleDbCommand(sql, conn) Dim dr As OleDbDataReader = cmd.ExecuteReader Try 'Versucht eine Verbindung herzustellen conn.Open() Catch ex As InvalidOperationException 'Ansonsten ein Fehlercode MsgBox(ex.Message) End Try Try 'Wenn man keine Übereinstimmung findet-> Fehlermeldung If dr.Read = False Then MessageBox.Show("FEHELR! BENUTZERNAME ODER PASSWORT FALSCH") Else 'Ansonsten ist es erfolgreich und die folge Form wird angezeigt. MessageBox.Show("Login Erfolgreich") frmFormular.Show() End If Catch ex As Exception MsgBox(ex.Message) End Try If conn.State <> ConnectionState.Closed Then conn.Close() End If End Sub Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aliter Geschrieben 27. Februar 2012 Teilen Geschrieben 27. Februar 2012 Hab nicht wirklich viel Ahnung von Access und .NET, aber du rufst zweimal conn.open() auf. Liegt es vielleicht daran? Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click Dim mypath = Application.StartupPath & "P:\garantieabwicklung.accdb" Dim Password = "" Dim conn As New OleDbConnection("Provider =" & "Microsoft.ACE.OLEDB.12.0;Data Source = P:\garantieabwicklung.accdb") Dim cmd As OleDbCommand 'Verbindungsdaten werden angegeben 'Abfrage ob die Daten in den Textboxen mit denen in der DB übereinstimmen Dim sql = "SELECT Username,Password FROM Login WHERE Username = '" & txtBenutzername.Text & "' AND Password = '" & txtPasswort.Text & "'" 'Verbindung öffnen [B][SIZE="4"]conn.Open()[/SIZE][/B] cmd = New OleDbCommand(sql, conn) Dim dr As OleDbDataReader = cmd.ExecuteReader Try 'Versucht eine Verbindung herzustellen [B][SIZE="4"]conn.Open()[/SIZE][/B] Catch ex As InvalidOperationException 'Ansonsten ein Fehlercode MsgBox(ex.Message) End Try Try 'Wenn man keine Übereinstimmung findet-> Fehlermeldung If dr.Read = False Then MessageBox.Show("FEHELR! BENUTZERNAME ODER PASSWORT FALSCH") Else 'Ansonsten ist es erfolgreich und die folge Form wird angezeigt. MessageBox.Show("Login Erfolgreich") frmFormular.Show() End If Catch ex As Exception MsgBox(ex.Message) End Try If conn.State <> ConnectionState.Closed Then conn.Close() End If End Sub Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Chlochou Geschrieben 27. Februar 2012 Autor Teilen Geschrieben 27. Februar 2012 Zum Glück kann man vor dem PC laut fluchen.. DANKE!! Ich hab das echt nicht mehr gesehen.. :S Hab jetzt einfach das zweite conn.open weggemacht und wuhuuu es funktioniert! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.