Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница: 1 |

 

  Вопрос: Не определяется база данных Добавлено: 12.08.07 12:34  

Автор вопроса:  lommike
Проблема следующего плана.
Программа писалась очень давно на VB4, VB5, VB6 под ОС Windows 2000. При попытке запустить её в VB6 под Windows XP возникает ошибка (последующее зацикливание) после следующего кода:

Private Sub Form_Load()
Dim rs1 As DAO.Recordset
Dim i As Integer, j As Integer
On Error Resume Next
Set db = Workspaces(0).OpenDatabase(App.Path & "\NameDB.mdb")
Set RS = db.OpenRecordset("Staff", dbOpenDynaset)
Set rs1 = db.OpenRecordset("User rights")

If rs1.RecordCount Then
rs1.MoveLast
ReDim Rights(rs1.RecordCount, 14)
rs1.MoveFirst
Do Until rs1.EOF
i = i + 1
For j = 1 To 14
Rights(i, j) = Trim(rs1.Fields(j - 1).Value)
Next j
rs1.MoveNext
Loop
End If

Не определяется база данных. Т.е. после строки
Set db = Workspaces(0).OpenDatabase(App.Path & "NameDB.mdb")
значение db – “nothing”. Ну и соответственно все проблемы после.
На Windows 2000 всё проходит без проблем.

Вопрос: в чём фишка и как её устранить?

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 el-paso



Вопросов: 0
Ответов: 56
 Профиль | | #1 Добавлено: 13.08.07 00:11
Не уверен, что поможет, потому что непонятно, откуда берется Workspaces(0) - где-то в другом месте создается? Попробуй вручную создавай объект Workspace функцией CreateWorkspace().

Как пример:

Dim ws As DAO.Workspace
Dim db As DAO.Database

Set ws = CreateWorkspace("", "admin", "", dbUseJet)
Set db = ws.OpenDatabase(...)
...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам