Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Путь до каталога с базой И BDEADmin  (Прочитано 6091 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Элексир
Помогающий

ru
Offline Offline
Пол: Мужской

« : 17-05-2009 12:35 » 

Здравствуйте. столкнулся с такой проблемой. есть программа испульзующая файлы бд через бде. при установке этой программы пользователям приходится прописывать через бде "ИмяБазы" и указывать путь до файлов бд. что не является очень удобным. подскажите как можно к программе подключать базы без использования бде. если можно поподробнее.
спасибо.
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 17-05-2009 15:47 » new

Элексир, например используя ADO. Только это не избавит от необходимости знать местоположение файла. Подумай — как вообще программа может работать с файлом, не зная, где он расположен?..

Избавится от файлов можно используя подключение к БД-серверу.

В принципе, если задача заключается только в том, чтобы в программе не прописывать путь, то можно в настройках ODBC системы создать источник данных (DSN), где и указывать местоположение файлов, а в программе (через тот же ADO) открывать по имени DSN.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
zubr
Гость
« Ответ #2 : 17-05-2009 17:35 » 

Ох, давно я не работал с BDE...
Насколько я помню, необязательно устанавливать BDE на компьютер пользователя. Достаточно скопировать в системную папку виндоз или в каталог с программой список dll из BDE:
bantam.dll
idapi32.dll
idbat32.dll
idpdx32.dll
idr20009.dll
idsql32.dll

Чтобы пользователю не надо было устанавливать алиас, его можно установить программно. Вот один из вариантов:
1. Добавляем на главную форму компонент TSession.
2. В обработчике OnCreate главной формы:
Код:
  Session1.AddStandardAlias('MyAlias', ExtractFilePath(ParamStr(0)), 'PARADOX');
  Session1.Active:=True;
  Query1.DatabaseName:='MyAlias';
Здесь предполагается имя алиаса - MyAlias, файлы БД расположены в одном каталоге с программой, БД- PARADOX. Для всех компонентов TQuery или TTable устанавливаем программно DatabaseName.
Записан
Элексир
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 18-05-2009 11:01 » 

спасибо, попробую.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines