Главная страница
    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.47 MB
Время: 0.003 c
14-58442
sniknik
2003-07-31 17:37
2003.08.18
Обращение к коллективному разуму. :о)) нужен алгоритм.


14-58392
mao
2003-08-04 14:36
2003.08.18
String to PChar


14-58482
sergio_serg
2003-07-23 16:10
2003.08.18
Работа с представлениями в BDE


14-58382
gyv
2002-11-28 13:51
2003.08.18
Проблема с KOLmdvXLGrid


14-58415
Михаил
2003-02-13 14:26
2003.08.18
поворот спрайтов в DxSpriteEngine





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский