Announcement

Collapse
No announcement yet.

"Unspecified Error" beim Verbinden mit einer Access-DB unter anderem User-Context

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • "Unspecified Error" beim Verbinden mit einer Access-DB unter anderem User-Context

    Hi,

    Ich versuche aus einem Programm heraus auf eine Datenbank zuzugreifen, die über eine MDW-datei gesichert ist. Das Programm ruft dementsprechend auch mit einem angepassten Connection String die Datenbank auf. Hier kurz der Code in groben Zügen:

    [highlight=vbnet]
    Class dbAccess
    Inherits clsDatabase
    BaseCon As OleDbConnection ' eigentlich ein Array von Verbindungen, aber die Verwaltung hier darzustellen wäre zu umfangreich und führt an der Frage vorbei

    Public Sub New(connectionString As String)
    Mybase.New(connectionString) ' speichert connectionString in Objekt
    End Sub

    Public Function Open() As Boolean
    BaseCon = New OleDbConnection(MyConnStr)
    If BaseCon Is Nothing Then Return False
    BaseCon.Open()
    End Sub

    Public Sub Close()
    BaseCon.Close()
    End Sub

    End Class

    session.IniConnectionString = "Provider='Microsoft.Jet.OLEDB.4.0';Data Source='\\f225033W\Users\Dietz\QS.mdb';Persist Security Info=true;Jet OLEDB:System Database='\\f225033W\Users\Dietz\QS-System.mdw';User ID='testUser';Password='Test';"

    Public Sub TestDBConnection
    Dim MyDb As New dbAccess(session.IniConnectionString)
    If Not MyDb.Open() Then
    ShowError("Fehler beim Verbinden mit Datenbank")
    Return
    End If
    Dim s As String = "SELECT Count(*) FROM Messtab"
    Dim Anzahl As Integer = MyDb.sqlGetLng(s)
    Debug.Print(Anzahl)
    MyDB.Close()
    End Sub
    [/highlight]

    Arbeite ich nun unter meiner Kennung läuft alles ohne Probleme, wechsele ich im Programm aber die Identität auf einen Funktionsuser (damit mir nicht jeder Toolanwender, der wegen der ldb Schreibzugriff auf das Verzeichnis braucht, die Datenbank löschen kann), erhalte ich beim BaseCon.Open() einen Unspecified Error.

    Der Impersonated User hat Vollzugriff sowohl auf die MDB, die MDW als auch auf das Verzeichnis, in dem die Dateien sind, trotzdem erhalte ich diesen Fehler. Muss mein Funktionsuser auf sonst noch etwas berechtigt werden, oder kann ein Funktionsuser (ohne Benutzerprofil) gar nicht auf eine Access-Datenbank zugreifen?

    Gruß
    Martin
Working...
X