| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS Access > multi user db Access |
| Автор: xaxaTyH 11.9.2008, 00:20 | ||
| Добрый вечер. Суть проблемы: Есть приложение (exe, no sources), которое обращается к своей бд (запароленной). Формат бд: Access97. В базе кроме дефолтного Admin'a никто не прописан. Возникла необходимость подключится к этой бд из своего приложения одновременно с работой другого приложения, которое эту бд использует. Т.е. нужно одновременное соединение с бд 2х приложений. Делал так: конвертировал базу в формат Access 2000 (для возможности изменения). Прописал в базу пользователя - user, дал права на чтение бд. Потом конвертировал обратно в формат Access 97 (т.к. чужая прога воспринимает только этот формат). В коде своей программы подключаюсь так:
При открытии соединения с бд - con.open(..) - получаю exception: "Не удается запустить приложение. Системная база данных отсутствует или открыта с монопольным доступом другим пользователем." Хотя Access полностью закрыт, файлов блокировки нет, чужая прога тоже закрыта. Скажите, пожалуйста, в чем проблема? |
| Автор: Akina 11.9.2008, 07:43 |
| Не поленитесь слазить в ADO API Reference и посмотреть, что же на самом деле пишется в ConnectionString. Там всего 5 возможных параметров, и попытка навязать свои дополнительные ни к чему хорошему не приводит. |
| Автор: bopoha 11.9.2008, 09:56 |
| Для проверки можно создать текстовый файл, переименовать его расширение на udl, а потом кликнуть на получившемся файле два раза. В реузльтате откроется редактор подключейний. Там можете и проверить. |
| Автор: xaxaTyH 11.9.2008, 23:05 |
| Спасибо за ответы. Проблема оказалось в следующем - чужая прога подключается к бд в эксклюзивном режиме (защита у нее такая, чтобы никто к базе не подключался). Буду решать вопрос созданием репликации. |