Access 2.0.
Хотя версия access - не важна, я думаю.
Короче - программно переподключаю таблицы, в файле accounts.mdb из файла update.mdb:
Dim my_acc As Database
Dim my_rec As Recordset
Set my_acc = my_wrk.OpenDatabase("c:\accounts\accounts.mdb")
Set my_rec = my_acc.OpenRecordset("t_relink", DB_OPEN_DYNASET)
Dim tbl_accounts As TableDef
Dim my_index As Integer
MsgBox "тут1"
For my_index = 0 To my_acc.TableDefs.count - 1
Set tbl_accounts = my_acc.TableDefs(my_index)
If tbl_accounts.Connect <> vbNullString Then
my_rec.FindFirst "t_name = '" & tbl_accounts.name & "'"
'If Not my_rec.nomatch Then
tbl_accounts.Connect = my_rec![t_path]
tbl_accounts.RefreshLink
'End If
End If
Next
MsgBox "тут2"
Set my_acc = Nothing
Новые ссылки лежат в таблице
t_relink.
Однако на этапе
tbl_accounts.RefreshLink. выдаётся ошибка "Невозможно найти устанавливаемый ISAM".
В Help MS Access говорят, что либо путь нарушен, либо (что ещё хуже) драйвер ISAM не установлен. Это не правда, т.к. в ini - ясно написанно:
[Installable ISAM]
FoxPro 2.5=c:\accounts\xbs200.dll
FoxPro 2.6=c:\accounts\xbs200.dll
FoxPro 2.0=c:\accounts\xbs200.dll
dBASE III=c:\accounts\xbs200.dll
dBASE IV=c:\accounts\xbs200.dll
Кто-то сталкивался с проблемой от ISAM?