Die Suche nach dem richtigen OleDb-Verbindungszeichenfolge VB.Net
Erstelle ich eine 32bit app auf einem alten XP-Rechner, diese app läuft auf Win7 oder höher als gut.
so, ich bin versuchen zu testen, was Verbindungszeichenfolge funktioniert. Wie:
Private Function test_ace_or_jet(ByVal mdb_path As String) As String
Dim connString As String
Dim dbMaintPort As OleDb.OleDbConnection
connString = ""
Try
connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & mdb_path
dbMaintPort = New OleDb.OleDbConnection(connString)
dbMaintPort.Open()
dbMaintPort.Close()
MsgBox("1 was found")
Catch ex As Exception
MsgBox("Could not open 1" & vbCrLf & vbCrLf & ex.Message)
Try
connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & mdb_path
dbMaintPort = New OleDb.OleDbConnection(connString)
dbMaintPort.Open()
dbMaintPort.Close()
MsgBox("2 was found")
Catch ex2 As Exception
connString = ""
MsgBox("Could not open 2" & vbCrLf & vbCrLf & ex2.Message)
End Try
End Try
test_ace_or_jet = connString
End Function
Jedoch das Problem, dass ich festgestellt habe, ist, dass auf der XP-Maschine, die erste Verbindungszeichenfolge nicht scheitern. Es hat nicht ACE installiert ist.
Wie kann ich testen, ob die eine oder die andere? Bin ich in der Lage, um die obige Funktion zu geben, mir die korrekte Verbindungszeichenfolge?
InformationsquelleAutor Hank | 2013-02-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
wenn Sie weiterhin tun, Ihre try/catch, bis Sie etwas finden, könnten Sie nisten sich ziemlich tief... Sie kann besser sein (beim testen), dabei eine Schleife und ein array von Verbindungszeichenfolgen etwas wie
Außerdem, haben Sie schon einen Blick auf ConnectionStrings.com? Sie könnte Ihnen mehr Optionen und die Verbindung von Proben und testen die verschiedenen Anbieter und so.
Hank, du Zustand, die Sie nicht haben ass in ins stocken geraten... Aber das kommt wahrscheinlich über andere software, wie Office/Access... haben Sie überprüft so etwas wie C:\Program Files\Common Files\Microsoft Shared\OFFICE14\ACEOLEDB.DLL
Hi @DRapp, gerade überprüft und Sie sind korrekt, ich habe Sie beide... verrückt!
InformationsquelleAutor DRapp