Главная страница
    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-58470
Мышь
2003-07-22 21:04
2003.08.18
Как послать в StoredProc длинную строку в качестве параметра


14-58445
Till
2003-08-02 12:06
2003.08.18
Lotus Notes


14-58475
1111111
2003-07-23 18:35
2003.08.18
как составить такой SQL запрос


14-58406
artgamer
2002-12-12 23:56
2003.08.18
Караул!!! Не могу запустить приложение MCK!!!


14-58428
IBSN
2003-08-01 16:01
2003.08.18
ctrl+alt+delete или OnExit





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