Access 2003 runtime error 3170, Could not find installable

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Andrew Hulting
    New Member
    • Dec 2010
    • 13

    Access 2003 runtime error 3170, Could not find installable

    I am getting an erro on line 11, OpenDatabase(Na me As String, [Options], [ReadOnly], [Connect]) I can leave the Options field blank, and it errors saying that the password is invalid, I am 100% certian that the password is correct, and if I leave it blank it prompts then errors. I have read countless articles, and reregistered the DLL's and even reinstalled office, to no avail. Anyone with any ideas that would be excellent.

    Code:
    Public Function fnReadDBTables(FilePath As String, Pword As String, SavePath As String)
    Dim dbname As String
    Dim rst2 As DAO.Recordset
    Dim DbRead As DAO.Database
    Dim mySQL1 As DAO.Recordset
    Dim filetemp1 As Integer 'start of file string
    Dim filetemp2 As Integer 'end of file string
    
    dbname = Forms![main]![dbNameComboBox1]
    
    Set DbRead = DAO.OpenDatabase(FilePath, False, False, Pword)
    Set rst2 = db.OpenRecordset("tblDatabaseTables", dbOpenDynaset)
    Set mySQL1 = DbRead.OpenRecordset(("SELECT MSysObjects.Name, MSysObjects.Database, _
    MSysObjects.Connect, MSysObjects.Type _
     FROM MSysObjects WHERE (((MSysObjects.Name) Not Like ('MSys*') And _
     (MSysObjects.Name) Not Like ('~TMPCLP*')) AND _
    ((MSysObjects.Type)=1 Or (MSysObjects.Type)=6)) ORDER BY MSysObjects.Name;"))
            Do Until mySQL1.EOF
            rst2.AddNew
                rst2("DatabaseName") = dbname
                rst2("TableName") = mySQL1!Name
                rst2("Database") = mySQL1!Database
                If Not mySQL1!Database = "" Then
                        filetemp1 = InStrRev(mySQL1!Database, "\")
                        filetemp2 = InStrRev(mySQL1!Database, ".")
                        Else
                        filetemp1 = 1
                        filetemp2 = 0
                       
                        
                        End If
                        If filetemp2 > filetemp1 Then
                        rst2("DatabaseName2") = Mid(mySQL1!Database, _
     (filetemp1 + 1), ((filetemp2 + 3) - filetemp1))
                        Else
                        rst2("DatabaseName2") = ""
                        End If
                rst2("Connect") = mySQL1!Connect
                rst2("Type") = mySQL1!Type
            rst2.Update
            mySQL1.MoveNext
            Loop
    Set rst2 = Nothing
    DbRead.Close
    
    End Function
  • Andrew Hulting
    New Member
    • Dec 2010
    • 13

    #2
    I got it to work, I added "MS Access;PWD=" & Pword is valid to line 11.

    Comment

    Working...