Я пишу приложение, которое должно открыть существующую базу данных BDE, которая была сохранена третьей стороной.Открытие базы данных Paradox; Обходной путь «PDOXUSRS.NET»?
В этом приложении я в настоящее время есть TDatabase
(DriverName
: STANDARD
) с path
установлен правильно Params
.
Теперь я могу установить Connected
в true без сообщения об ошибке.
Существует также TTable
с DatabaseName
набором для значений TDatabase и TableName
набора в .db-файл, который находится в папке (название заполняется автоматически, я только шляпу, чтобы выбрать его).
Теперь проблема:
Если установить Active
истинно, сообщение об ошибке сообщает об отсутствии прав доступа к C:\PDOXUSRS.NET
.
Я знаю, что могу установить другой путь, используя BDEADMIN
, но мне нужно решить это в своем приложении - я не могу ожидать, что каждый клиент сделает это изменение. Кроме того, у меня есть тестовая машина с запущенным сторонним приложением - она может обращаться к базе данных без каких-либо ошибок, в то время как мое приложение выдает вышеупомянутую ошибку. Это приводит меня к подозрению, что может быть обходной путь.
Есть ли такое обходное решение?
Мне нужен только доступ для чтения к базе данных.
Вы можете попытаться изменить его программно http://edn.embarcadero.com/article/23231 – bummi
Если все остальное не удается, вы можете попробовать пропустить BDE и получить доступ к таблицам Paradox с помощью драйвера ddExpress ODBC, как этот : https://sourceforge.net/projects/open-dbexpress/ –
Вы используете Windows 7? Вероятно, вы не можете получить доступ к корню C :. Попробуйте изменить каталог сетевого файла на каталог под своим именем пользователя. Вы должны сделать это с помощью программы BDEAdmin. –