Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Вниз

Работа с Install Shield Express   Найти похожие ветки 

 
kamchatik   (2003-07-23 16:24) [0]

Такой вопрос:
Есть готовая программа, надо написать на нее сетап, решил воспользоваться Install Shield 3.5 - но не знаю как указать в нем алиас, решил переделать прогу - т.е. таблицы работают не через алиас а через указаный путь, но возникла другая проблема - в программе есть компоненты Query которые тоже требуют указания алиаса, пробовал прописывать путь к таблице в самом запросе но тоже не работает. Подскажите что делать?


 
Anatoly Podgoretsky   (2003-07-23 16:38) [1]

TDatabase используй


 
AbrosimovA   (2003-07-23 16:41) [2]

Можно также написать код в программе, который бы создавал элиас.


 
kamchatik   (2003-07-23 16:41) [3]

Прошу прощения за свою тупость и назойливость но нельзя ли поподробней?


 
AbrosimovA   (2003-07-23 16:49) [4]

Вот тебе пример автоматического создания элиаса при запуске программы.

Program Book;

uses
Forms,
Windows,
Registry,
SysUtils,
Classes,
DBTables,
Splash in "Splash.pas" {SplashForm},
Module in "Module.pas" {DataModule1: TDataModule},
Data in "Data.pas" {MainForm},
Login in "Login.pas" {PasswordDlg},
Change in "Change.pas" {PasswordDlg1},
About in "About.pas" {AboutBox};

{$R *.RES}

var L : TStringList;
Index: integer;
Flag2: boolean;

begin
with TRegistry.create do
begin
Rootkey := HKEY_LOCAL_MACHINE;
if Not (OpenKey("SOFTWARE\BORLAND\DATABASE ENGINE", false)) then
begin
MessageBox(0,PChar("Не установлена BDE."),
PChar("Телефонный справочник"), mb_OK);
Application.Terminate;
end
else
begin
CFGFile := ReadString("CONFIGFILE01");
Free;
try
Application.CreateForm(TDataModule1, DataModule1);
except
MessageBox(0,PChar("Ошибка настройки базы данных
Paradox !!!"),
PChar("Телефонный справочник"), mb_OK);
Application.Terminate;
end;
DataModule1.Session1.ConfigMode := cmPersistent;
L := TStringList.Create;
try
DataModule1.Session1.GetAliasNames(L);
for Index := 0 to L.Count - 1 do
if L.Strings[Index]="MyBase" then Flag2:=true;
if NOT(Flag2) then
begin
L.Add("PATH="+ExtractFilePath(Application.Exename)
+"Data");
DataModule1.Session1.AddAlias("MyBase", "STANDARD", L);
DataModule1.Session1.SaveConfigFile;
end;
DataModule1.Cust.Active:=true;
finally
L.Free;
end;
try
SplashForm := TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;
SplashForm.Hide;
finally
SplashForm.Free;
end;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TPasswordDlg, PasswordDlg);
Application.CreateForm(TPasswordDlg1, PasswordDlg1);
( TAboutBox, AboutBox) Вот тебе пример автоматического создания элиаса при запуске программы.

Program Book;

uses
Forms,
Windows,
Registry,
SysUtils,
Classes,
DBTables,
Splash in "Splash.pas" {SplashForm},
Module in "Module.pas" {DataModule1: TDataModule},
Data in "Data.pas" {MainForm},
Login in "Login.pas" {PasswordDlg},
Change in "Change.pas" {PasswordDlg1},
About in "About.pas" {AboutBox};

{$R *.RES}

var L : TStringList;
Index: integer;
Flag2: boolean;

begin
with TRegistry.create do
begin
Rootkey := HKEY_LOCAL_MACHINE;
if Not (OpenKey("SOFTWARE\BORLAND\DATABASE ENGINE", false)) then
begin
MessageBox(0,PChar("Не установлена BDE."),
PChar("Телефонный справочник"), mb_OK);
Application.Terminate;
end
else
begin
CFGFile := ReadString("CONFIGFILE01");
Free;
try
Application.CreateForm(TDataModule1, DataModule1);
except
MessageBox(0,PChar("Ошибка настройки базы данных
Paradox !!!"),
PChar("Телефонный справочник"), mb_OK);
Application.Terminate;
end;
DataModule1.Session1.ConfigMode := cmPersistent;
L := TStringList.Create;
try
DataModule1.Session1.GetAliasNames(L);
for Index := 0 to L.Count - 1 do
if L.Strings[Index]="MyBase" then Flag2:=true;
if NOT(Flag2) then
begin
L.Add("PATH="+ExtractFilePath(Application.Exename)
+"Data");
DataModule1.Session1.AddAlias("MyBase", "STANDARD", L);
DataModule1.Session1.SaveConfigFile;
end;
DataModule1.Cust.Active:=true;
finally
L.Free;
end;
try
SplashForm := TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;
SplashForm.Hide;
finally
SplashForm.Free;
end;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TPasswordDlg, PasswordDlg);
Application.CreateForm(TPasswordDlg1, PasswordDlg1);
Application.CreateForm(TAboutBox, AboutBox);
Application.Run;
end;
end;


 
kamchatik   (2003-07-23 16:52) [5]

Так вкдь сетап делается для того чтобы BDE не ставить. Поэтому его не будет - как я понимаю (а может и неправ) там только драйваки какието добавляются


 
Sandman25   (2003-07-23 16:54) [6]

Если есть TQuery, то есть и BDE.


 
Anatoly Podgoretsky   (2003-07-23 16:55) [7]

Тебя обманули, setup делают для того, что бы просто было инсталлировать и деинсталлировать продукт. К БДЕ и другим библиотекам это имеет только косвенное отношение.


 
AbrosimovA   (2003-07-23 16:57) [8]

Как же у тебя программа будет работать без BDE?
InstallShield также ставит BDE.


 
kamchatik   (2003-07-23 16:58) [9]

Ладно всем спасибо, хотелось как лучше получилось как всегда :)
Будем делать все старым проверенным путем: BDE, установка алиаса, перепись программы и таблиц. :)



 
Anatoly Podgoretsky   (2003-07-23 17:01) [10]

Ну ладно мучайся.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.003 c
14-58399
den777
2003-08-04 10:24
2003.08.18
Как выгрузить ненужные пакеты


14-58427
Tyrande
2003-08-01 20:38
2003.08.18
Проверка


14-58473
XanderMan
2003-07-23 16:41
2003.08.18
Неотменяемая транзакция внутри сохраненной процедуры


14-58424
VictorT
2003-08-04 12:57
2003.08.18
Урряяяя!!! Я Сделал это!!!


14-58478
II
2003-07-23 18:09
2003.08.18
Как в TDBGridEh запретить редактировать поределенную колонку





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский