IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> алиас?
SS
сообщение 27.12.2005 23:56
Сообщение #1


Гость






Как сделать так чтобы, при запуске проги с БД, прога знала где искать файлы БД. Или создавала бы сама папку допустим C:/d , а в этой папке создавала или копировала файлы БД.
 К началу страницы 
+ Ответить 
Ozzя
сообщение 28.12.2005 8:49
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


InstallshieldExpress, входящий в поставку Delphi, позволяет все это делать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Бродяжник
сообщение 28.12.2005 9:26
Сообщение #3


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

Репутация: -  3  +


...а если хочется чего-то другого, то можно
- юзать реестр
- юзать INI-файлы
- танцевать от автоматического определения пути к ЕХЕ-файлу (это можно сделать через объект Application. То ли Application.ExeName, то ли еще как-то так)
- в самом тупом случае действительно можно просто потребовать, чтобы юзеры непременно ставили нашу прогу в C:\MyProg\. Ах, им это неудобно?! adm.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Gothic_Snake
сообщение 28.12.2005 18:51
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 45
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Цитата(Бродяжник @ 28.12.2005 12:26) *

...а если хочется чего-то другого, то можно
- юзать реестр
- юзать INI-файлы
- танцевать от автоматического определения пути к ЕХЕ-файлу (это можно сделать через объект Application. То ли Application.ExeName, то ли еще как-то так)
- в самом тупом случае действительно можно просто потребовать, чтобы юзеры непременно ставили нашу прогу в C:\MyProg\. Ах, им это неудобно?! adm.gif

paramstr(0) - выдает путь к екзешнику запущенной программы..
extractfiledir(paramstr(0)) - выдает текущую папку..
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
SS
сообщение 28.12.2005 22:50
Сообщение #5


Гость






Дело такое... проэкт проги на БД будет передан преподу. Препод будет запускать прогу не через экзешник, а делфи->открыть->проэкт и уже там F9.
Я хочу поместить файлы БД в папку, где будет находица проэкт, как сделать так, чтобы прога обращалась за БД, в ту папку откуда она запущена?
 К началу страницы 
+ Ответить 
Ozzя
сообщение 29.12.2005 10:44
Сообщение #6


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


1. http://forum.sources.ru/index.php?showtopic=62261
2. Можно через ADO
Я делал так
Код
OpenDialog1.Filter := 'Ôàéëû ÁÄ Access (*.mdb)|*.mdb|All files (*.*)|*.*';
  OpenDialog1.FilterIndex := 1; { start the dialog showing all files }
  if OpenDialog1.Execute then
    fn := Opendialog1.FileName;
  DataModule2.ADOConnection1.ConnectionString :=
  '"Provider=MSDASQL.1;'+
  'Persist Security Info=False;'+
  'Extended Properties="'+
  'DBQ='+fn+';'+
  'DefaultDir='+ExtractFilePath(fn)+';'+
  'Driver={Driver do Microsoft Access (*.mdb)};'+
  'DriverId=25;'+
  'FIL=MS Access;'+
  'FILEDSN='+ExtractFilePath(fn)+'\db1.mdb.dsn;'+
  'MaxBufferSize=2048;'+
  'MaxScanRows=8;'+
  'PageTimeout=5;'+
  'SafeTransactions=0;'+
  'Threads=3;'+
  'UID=admin;'+
  'UserCommitSync=Yes;"';
  DataModule2.ADOConnection1.Connected := True;
  DataModule2.ADOTable1.Active := True;
  DataModule2.ADOTable3.Active := True;
  DataModule2.ADOTable2.Active := True;
  DataModule2.ADOTable4.Active := True;
  DataModule2.ADOTable5.Active := True;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
YurKaluga
сообщение 29.12.2005 12:26
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской

Репутация: -  0  +


Дельфя же компилит экзешник туда же где проект, послушай Gothic_Snake (см.выше) ExtractFileDir(paramstr(0)) или ExtractFilePath(paramstr(0)) или вместо paramstr(0) впиши Application.ExeName, тоже работает cool.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 29.12.2005 12:32
Сообщение #8


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


YurKaluga

Речь же идет не об этом.
Цитата
Я хочу поместить файлы БД в папку, где будет находица проэкт, как сделать так, чтобы прога обращалась за БД, в ту папку откуда она запущена?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
YurKaluga
сообщение 30.12.2005 10:27
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской

Репутация: -  0  +


Я, например, прописываю путь прямо в компоненте, что-то типа
Table1.DataBaseName:= ExtractFilePath(paramstr(0)).
Вот я о чем...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
GoodWind
сообщение 30.12.2005 20:32
Сообщение #10


Автооответчик
*****

Группа: Модераторы
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


уж простите тупого меня... если я ошибаюсь... rolleyes.gif
Код
AddStandardAlias('MYDBDEMOS', 'C:\TESTING\DEMOS\', 'Paradox');

создает алиас... параметры
  1. Имя алиаса
  2. Путь к БД
  3. Драйвер


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Gothic_Snake
сообщение 10.01.2006 16:12
Сообщение #11


Новичок
*

Группа: Пользователи
Сообщений: 45
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Цитата(GoodWind @ 30.12.2005 23:32) *

уж простите тупого меня... если я ошибаюсь... rolleyes.gif
Код
AddStandardAlias('MYDBDEMOS', 'C:\TESTING\DEMOS\', 'Paradox');

создает алиас... параметры





  1. Имя алиаса


  2. Путь к БД


  3. Драйвер




В каком модуле процедурка описана?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
GoodWind
сообщение 10.01.2006 23:34
Сообщение #12


Автооответчик
*****

Группа: Модераторы
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


не знаю... посмотри в дельфовом хелпе wink.gif


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 10.01.2006 23:41
Сообщение #13


Гость






GoodWind, если я не ошибаюсь, AddStandardAlias это метод класса TSession, следовательно в модуле DBTables...
 К началу страницы 
+ Ответить 
GoodWind
сообщение 10.01.2006 23:53
Сообщение #14


Автооответчик
*****

Группа: Модераторы
Сообщений: 1 188
Пол: Мужской
Реальное имя: Александр

Репутация: -  16  +


volvo скорее всего... не установлена Дельфи сейчас...


--------------------
Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 10.07.2025 22:33
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"