Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 11:58
Всегда подключался так:
cn.Open "driver={Microsoft access driver (*.mdb)};Extended Properties=""DBQ=" & App.Path & "\Universys.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"""
Под администратором все в порядке, а под пользователем с огдраниченными правами ругается на невозможность открыть какую-то ветку реестра.
Может есть какой-нибудь более другой способ установить соединение без dsn? Использую ADO 2.8
Лучший способ понять что-то самому — объяснить это другому.
-
alibek
-
- Большой Человек
-
-
- Сообщения: 14205
- Зарегистрирован: 19.04.2002 (Пт) 11:40
- Откуда: Russia
alibek » 30.08.2005 (Вт) 12:06
А зачем тебе ODBC? Чем не нравиться OLEDB?
- Код: Выделить всё
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.Provider = "Microsoft.Jet.OLEDB.4.0"
cnn.Properties("Data Source") = "C:\db1.mdb"
cnn.Properties("User Id") = "admin"
cnn.Properties("Password") = "pwd987"
cnn.Properties("Jet OLEDB:Database Password") = "my_pwd_123"
cnn.Properties("Jet OLEDB:System Database") = "C:\db1.mdw"
cnn.Open
Lasciate ogni speranza, voi ch'entrate.
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 12:18
А зачем тебе ODBC? Чем не нравиться OLEDB?
Так уж сложилось..
Вопросы:
1. База запаролена. Какой из этих двух паролей нужен и нафига второй?
2. Как создать mdw?
Лучший способ понять что-то самому — объяснить это другому.
-
Konst_One
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3041
- Зарегистрирован: 09.04.2004 (Пт) 13:47
- Откуда: Химки
-
Konst_One » 30.08.2005 (Вт) 12:39
1 первый пароль - это когда просто запаролена база, второй, если через свою mdw
2 mdw создается специальной тулзой в составе офиса что-то типа администратор рабочих групп акцесс или тому подобное (в 2003-м он из меню защита кажется вызывается).
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 13:07
Спасибо, разобрался.
Лучший способ понять что-то самому — объяснить это другому.
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 13:47
А без mde нельзя?
Лучший способ понять что-то самому — объяснить это другому.
-
alibek
-
- Большой Человек
-
-
- Сообщения: 14205
- Зарегистрирован: 19.04.2002 (Пт) 11:40
- Откуда: Russia
alibek » 30.08.2005 (Вт) 13:48
Да можно, конечно. Не указывай MDW и все.
Lasciate ogni speranza, voi ch'entrate.
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 14:39
Пробовал так:
- Код: Выделить всё
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.Properties("Data Source") = App.Path & "\Universys.mdb"
cn.Properties("Password") = "pass"
cn.Open
пишет "Сисемная база данных отсутствует или открыта с монопольным доступом другим пользователем".
Перед этим mdw удалил, восстановил старую базу.
Лучший способ понять что-то самому — объяснить это другому.
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 14:42
Если снять пароль, то работает.
Лучший способ понять что-то самому — объяснить это другому.
-
Konst_One
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3041
- Зарегистрирован: 09.04.2004 (Пт) 13:47
- Откуда: Химки
-
Konst_One » 30.08.2005 (Вт) 14:42
может у тебя эта база в акцессе открыта в монопольном режиме? или ты забыл обратно присоединиться к system.mdw
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 14:44
2 Konst_One
А без mde нельзя?
Да можно, конечно. Не указывай MDW и все.
Лучший способ понять что-то самому — объяснить это другому.
-
Konst_One
-
- Член-корреспондент академии VBStreets
-
-
- Сообщения: 3041
- Зарегистрирован: 09.04.2004 (Пт) 13:47
- Откуда: Химки
-
Konst_One » 30.08.2005 (Вт) 14:44
тогда попробуй вот это:
- Код: Выделить всё
cn.Properties("Jet OLEDB:Database Password") ="pass"
-
Antonariy
-
- Повелитель Internet Explorer
-
-
- Сообщения: 4824
- Зарегистрирован: 28.04.2005 (Чт) 14:33
- Откуда: Мимо проходил
-
Antonariy » 30.08.2005 (Вт) 14:45
2 Konst_One
Сработало! Спасибо.
Лучший способ понять что-то самому — объяснить это другому.
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: AhrefsBot, Google-бот, SemrushBot, Yandex-бот и гости: 90