welche dll muss ich noch registrieren

Diskutiere welche dll muss ich noch registrieren im Programmierung Forum im Bereich Software Forum; Hallo zusammen, ich habe eine Access 03 db die per ODBC auf eine MySQL 5.0 Server zugreift. beim starten und einloggen der DB werden die MySQL...
S

spite

Threadstarter
Mitglied seit
05.11.2008
Beiträge
108
Standort
CH
Hallo zusammen,
ich habe eine Access 03 db die per ODBC auf eine MySQL 5.0 Server zugreift. beim starten und einloggen der DB werden die MySQL Tabellen per VBA eingebunden.

Code:
    'Alle Tabellen löschen
    Dim aoTable As AccessObject
    For Each aoTable In CurrentData.AllTables
       'lokale Systemtabellen nicht löschen
        If (Left(aoTable.Name, 4) <> "loc_") And (Left(aoTable.Name, 4) <> "MSys") And (Left(aoTable.Name, 7) <> "Eingang") And (Left(aoTable.Name, 5) <> "liste") Then
            DoCmd.DeleteObject acTable, aoTable.Name
        End If
    Next aoTable

    'Liste aller Server-Tabellen laden
    Dim cnn As New adodb.Connection
    cnn.Open "Provider=MSDASQL.1;Data Source=ifund;Extended Properties=""DSN=ifund;DATABASE=" & g_sDatenbank & ";""", g_sUser, g_sPassword
    Dim rsTableNames As New adodb.recordSet
    Set rsTableNames = cnn.Execute("SHOW TABLES;")

    'Tabellen verknüpfen
    Dim catDB As ADOX.Catalog
    Dim tblNewTable As ADOX.table

    Set catDB = New ADOX.Catalog
    catDB.ActiveConnection = CurrentProject.Connection

    While Not rsTableNames.EOF

        'vgl. office programmierhandbuch s 717ff
        Set tblNewTable = New ADOX.table
        With tblNewTable
            .Name = rsTableNames.Fields(0).value
            Set .ParentCatalog = catDB
            .properties("Jet OLEDB:Create Link") = True
            .properties("Jet OLEDB:Link Provider String") = "ODBC;DSN=ifund;USER=" & g_sUser & ";PASSWORD=" & g_sPassword & ";DATABASE=" & g_sDatenbank & ";" '"ODBC;DSN=ifund;" '
            .properties("Jet OLEDB:Remote Table Name") = rsTableNames.Fields(0).value
        End With
        catDB.Tables.Append tblNewTable '<-- hier kommt der Fehler: ODBC-Aufruf Fehlgeschlagen

        rsTableNames.MoveNext
    Wend
Auf allen Maschinen im Büro funktioniert die DB ausser auf einem Arbeitsplatz. Der Fehler war der, dass die Bibliotheken msADOX.dll sowie msado15.dll nicht in der Registry eingetragen waren. Dies habe ich per regsvr32 [BIBLOTHEK] nachgeholt.

Trotzdem kommt der Fehler, dass der ODBC-Aufruf fehlgeschlagen ist obwohl ich die ODBC Schnittstelle von MySQL neu installiert hatte.

Die Connection steht nun aber die Tabellen wollen nicht eingebunden werden. der Code stimmt, da dies auf den anderen Rechnern funktioniert. ich vermute ich muss eine Bibliothek noch registrieren aber welche, hat jemand von euch eine Ahnung?
danke spite
 
Zuletzt bearbeitet:
S

spite

Threadstarter
Mitglied seit
05.11.2008
Beiträge
108
Standort
CH
Ich habe den Fehler gefunden, doch keine Lösung :cheesy
Wenn ich die Tabellennamen auslese, dann werden diese nur als Strings in "?" in der Länge der Tabellen name ausgegeben z.B. "???????????". Damit kann die ODBC Schnittstelle nichts anfangen und die Tabelle wird nicht verbunden und eine Fehlermeldung erscheint :mad
Hatte jemand von euch auch schon mal so ein Problem? Was ist die Abhilfe oder in welche Richtung soll ich suchen?
 
B

bagira

Mitglied seit
29.06.2006
Beiträge
298
Standort
in Deutschland.
wenn die via ODBC eine DB aufmachen willst, dann muss der DB-Name schon übergeben werden.

Was steht in der VAR g_sDatenbank drinnen ? Wenn da nur ??? drinnen sind, dann kann das nicht funktionieren. Das gleiche gilt für User und PW.

Diese Sachen definiert man im ODBC Treiber zu deiner DB.
 
S

spite

Threadstarter
Mitglied seit
05.11.2008
Beiträge
108
Standort
CH
In den Variablen stehen die werte klar drin und sogar richtig.
  • g_sDatenbank = DB Name
  • g_sUser = Username
  • g_sPassword = Passwort
Warum es die Tabellennamen nicht lesen kann ist mir ein Rätsel. Auf allen anderen Rechnern funktioniert dies ausser auf einen, dann kann es nicht am Code liegen.
Was muss ich noch für die ODBC Verbindung berücksichtigen? Ich vermute mal, dass ich irgendeine Bibliothek in die Registry einbinden muss.
 
S

spite

Threadstarter
Mitglied seit
05.11.2008
Beiträge
108
Standort
CH
ich versuchte dies jetzt zu umgehen, indem ich die Tabelle der Tabellen als pass through Abfrage realisierte, doch das Problem bleibt :wacko
Es muss nun meiner Meinung was mit dem Charset sein aber wo und wie sehe und behebe ich das?
 
B

bagira

Mitglied seit
29.06.2006
Beiträge
298
Standort
in Deutschland.
schau dir mal die verweise an. vielleicht fehlt auf diesem einem rechner noch was zum installieren.
 
Thema:

welche dll muss ich noch registrieren

welche dll muss ich noch registrieren - Ähnliche Themen

  • VCRUNTIME140.dll fehlt

    VCRUNTIME140.dll fehlt: Ich habe vcredistx86 installiert,trotzdem zeigt mir der Recher beim Neustart VCRUNTIME140.dll fehlt, bitte installieren. Was läuft da verkehrt ßß
  • wie api-ms-win-crt-runtime-l1-1-0 (1).dll neu/wieder installieren?

    wie api-ms-win-crt-runtime-l1-1-0 (1).dll neu/wieder installieren?: Moin, moin, seit Tage erhalte ich, wenn ich open office oder libre office installiert habe, die Meldung, dass diese nicht...
  • mir fehlt eine runtime dll

    mir fehlt eine runtime dll: moin zusammen, wenn ich ein Spiel starte, erhalte ich immer die Fehlermeldung: Das Programm kann nicht gestartet werden, da...
  • Bildschirm Freeze wegen nvoglv64.dll mit GTX1060

    Bildschirm Freeze wegen nvoglv64.dll mit GTX1060: Hallo Leute, ich habe mehrere PCs (gleiche Bauweise) die mir alle in meiner Anwendung nach einigen Stunden einen Freeze produzieren. Die PCs...
  • . fehlende AppVlsvSubsystem32.dll.

    . fehlende AppVlsvSubsystem32.dll.: Hallo, habe Windows7 über Vista installiert. Win7 CD stammt von meinem alten laptop. Lizenz wird nicht anerkannt. Wollte Win10 installieren...
  • Ähnliche Themen

    • VCRUNTIME140.dll fehlt

      VCRUNTIME140.dll fehlt: Ich habe vcredistx86 installiert,trotzdem zeigt mir der Recher beim Neustart VCRUNTIME140.dll fehlt, bitte installieren. Was läuft da verkehrt ßß
    • wie api-ms-win-crt-runtime-l1-1-0 (1).dll neu/wieder installieren?

      wie api-ms-win-crt-runtime-l1-1-0 (1).dll neu/wieder installieren?: Moin, moin, seit Tage erhalte ich, wenn ich open office oder libre office installiert habe, die Meldung, dass diese nicht...
    • mir fehlt eine runtime dll

      mir fehlt eine runtime dll: moin zusammen, wenn ich ein Spiel starte, erhalte ich immer die Fehlermeldung: Das Programm kann nicht gestartet werden, da...
    • Bildschirm Freeze wegen nvoglv64.dll mit GTX1060

      Bildschirm Freeze wegen nvoglv64.dll mit GTX1060: Hallo Leute, ich habe mehrere PCs (gleiche Bauweise) die mir alle in meiner Anwendung nach einigen Stunden einen Freeze produzieren. Die PCs...
    • . fehlende AppVlsvSubsystem32.dll.

      . fehlende AppVlsvSubsystem32.dll.: Hallo, habe Windows7 über Vista installiert. Win7 CD stammt von meinem alten laptop. Lizenz wird nicht anerkannt. Wollte Win10 installieren...
    Oben