Avatar billede sl5049 Nybegynder
13. maj 2001 - 21:27 Der er 10 kommentarer og
1 løsning

InstallShield i Delphi 4 - BDE skal med, men hvordan

Jeg er ved at lave en installationsdiskette i Delphis ”InstallShield Express for Delphi 4.0”. Under punktet ”Select InstallShield Objects for Delphi” vælger jeg ”BDE/BorlandDatabaseEngine” da mit program jeg gerne vil have distribueret bygger på en ParadoxDatabase og på en maskine uden Delphi installeret kræver BDE. Mit problem er at det ikke rigtigt virker for mig. Jeg vælger BDE, trykker på settings og ber om ”Partionel BDE Installation”, Vælger Paradox-driver, vælger ”Næste” og skal angive aliaser. Jeg angiver navne på mine to tabeller og trykker på ”Næste”. Vælger at der skal laves til både 16- og 32 bit system og vælger igen ”Næste”, og nu vil det ikke længere. Jeg kan vælge mellem min aliaser, men kan ikke definere typer og Path. Hvad gør jeg forkert. Hvis jeg inorerer det kan den godt lave disketter/cd, men det virker ikke når det bliver installeret – selvfølgelig. Er der nogen der kan hjælpe ?
Avatar billede fastpoint Nybegynder
13. maj 2001 - 21:42 #1
brug disse i stedet for

Inno Setup: http://www.jrsoftware.org/isinfo.htm
ISTool: http://www.bhenden.org/istool/
Avatar billede claus_w Nybegynder
13. maj 2001 - 22:40 #2
Ja, Inno Setup er et kanon program! Sad også og rodede med det sidste weekend, hvor jeg prøvede utroligt mange setup-programmer. Den helt sikkert nemmeste/hurtigste løsning viste sig at være Inno Setup, som også kan sættes til at indstallere Borland Database Engine, hvilket i mit tilfælde var hvad jeg ledte efter.

http://www.jrsoftware.org/ishowto.phtml?a=bde

Avatar billede pellelil Nybegynder
15. maj 2001 - 07:27 #3
Jeg vil også lige slå et slag for Inno Setup som har være mit foretrukne installations program det sidste års tid. Inno Setup er i sig selv \"script baseret\" hvilket vil sige at du (manuelt) skal skrive et script der indeholder informationerne vedr. installationen. Men dette \"problem\" løser du ved at installere ISTool (som \"fastpoint\" har et link til ovenstående). Med ISTool kan du således via denne GUI opbygge beskrivelsen væsentlig nemmere og dermed hurtigere.

Inno Setup er OpenSource/Freeware (faktisk skrevet i Delphi). Der findes således en \"afart\" af programmet som jeg vil foreslå du kigger på i stedet. Programmet \"My Inno Setup Extension\" (http://www.wintax.nl/isx/) er således et bedre produkt (flere features). \"My Inno Setup Extension\" er som regel 2-4 måneder på forkant med \"Inno Setup\" hvilket vil sige at de features der dukker op i \"My Inno Setup Extension\" sendere bliver en del af den \"Officielle\" Inno Setup. Pt. består forskellen i at \"My Inno Setup Extension\" har support for Pascal script. Hviket vil sige at du kan skrive meget avancerede installations programmer (skulle du ha\' brug for det).

Avatar billede sl5049 Nybegynder
15. maj 2001 - 08:37 #4
Jeg har anvendt Inno Setup og var glædeligt overrasket. Det virker rigtig godt og specielt installationen af BDE. Jeg har dog et problem - når jeg installere programmet med setup vil den ikke starte programmet fordi den mangler et alias. Claus_w skrev et link til en hjælpeside, der skriver lidt om det at oprette aliaser dirkete i scriptet. Hvordan jeg gør det, kan jeg ikke rigtigt hitte ud af ? 
Avatar billede sl5049 Nybegynder
15. maj 2001 - 08:38 #5
Hej Pellelil - tak for linket, jeg har ikke prøvet det endnu, men det kan være det kan løses mit problem med aliaser ?
Avatar billede pellelil Nybegynder
15. maj 2001 - 10:14 #6
Den link som claus_w henviser til indeholder et program ved navn AddAlias, og ved at kalde denne (med parametre) kan du oprette dit BDE-Alias. Flg. er fra tekstfilen der følger med til AddAlias:

<SNIP>
1. PARAMETERS

  Paramstr(0): programname + path (standard parameter of OS)
  Paramstr(1): Name of alias: if begins with \'-\' then delete first then add
                              else only add if doesn\'t exist
  Paramstr(2): path to data directory
  Paramstr(3): BDE driver name
</SNIP>

Efter som dit Alias skal oprettes under installationen så skal kaldet til AddAlias udføres i scriptets \"Run\" section (Eller \"Install Run\" når vi taler ISTool).
Avatar billede sl5049 Nybegynder
15. maj 2001 - 23:09 #7
Jeg har nu hentet AddAlias-programmet og lagt det i setup-bibilioteket og ændret i Inno Setup så det inkludere dettet program og kalder det under RUN. Hvordan skriver jeg parametrene ? Mit program hedder eksempelvis test.exe, aliaset dbTest. Hvis jeg har mere end et alias kører jeg så bare linjen en gang til med det nye alias ?
Avatar billede pellelil Nybegynder
16. maj 2001 - 08:19 #8
sl5049> Jeg mener at jeg (derhjemme) har et (gammelt) ISS script hvor jeg netop installere BDE\'en og opretter et par alias\'es. Hvis jeg har det (og kan finde det) vil jeg poste det i aften. I store træk kopiere mit script alle filerne ind på brugeres Temp-folder, hvorfra programmerne (Instbde og AddAlias kaldes). Du kan således i din Run-sektion kalde AddAlias flere gange med forsk. parameter. Jeg har selv \"viderudviklet\" på AddAlias således du kan overføre flere parameter end de std. 3: Navn på Alias, Path, BDE Driver name (jeg havde brug for at oprette et ODBC alias til en AS/400 hvor der var behov for flere parameter).

Hvis jeg ikke husker helt galt er det noget i denne retning (muligvis skal \"noget\" af det pakkes ind i anførsles tegn, men jeg er ikke sikker (PRØV DET).
<SNIP>
[Run]
Filename: {tmp}\\AddAlias.exe; Description: Udfør: AddAlias; Flags: nowait postinstall skipifsilent; Parameters: AliasNavn c:\\blabla\\ STANDARD
</SNIP>
Avatar billede sl5049 Nybegynder
16. maj 2001 - 09:03 #9
På forhånd tak - send til steffen@laursen.as
Avatar billede pellelil Nybegynder
16. maj 2001 - 17:24 #10
sl5049> Jeg har mailet dig hele den ISS filen som jeg havde til at ligge, men i god Experten-ånd vælger jeg her at gentage de dele der netop har med BDE registreringen at gøre (som \"svar\" på dit spørgsmål). Denne installation kalder et ekstern program (SetupReg.exe) som jeg ikke her medtager (men detter er også sendt til dig). Dette program er et jeg selv har skrevet, og det opretter blot en ODBC connection til en AS/400 (med den viden jeg har i dag, vil jeg tro at jeg kunne lave dette med \"My Inno Setup Extension\"\'s scripting sprog, uden at skulle ty til eksterne Delphi programmer). Nedenstående ISS-script vil således kalde denne \"SetupReg.Exe\" og efterfølgende oprette et BDE alias til denne (BDE\'en installeres også):

<SNIP>
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

[Setup]
CompressLevel=9
OutputDir=C:\\MultiDatabaseEngines\\Output
SourceDir=C:\\MultiDatabaseEngines
AppCopyright=©2001 All Rights Reserved by Pelle F. S. Liljendal
AppName=MultiDatabaseEngines
AppVerName=MultiDatabaseEngines version 1.0


AppPublisher=Pelle F. S. Liljendal
AppPublisherURL=www.liljendal.dk
AppSupportURL=www.liljendal.dk
AppUpdatesURL=www.liljendal.dk
AppVersion=Version 1.0a

LicenseFile=C:\\MultiDatabaseEngines\\License.rtf

CreateAppDir=false
UsePreviousAppDir=false
UsePreviousGroup=false

[_ISTool]
EnableISX=false

[Files]
Source: C:\\Programmer\\ISTool\\AddAlias.exe; DestDir: {tmp}; Flags: deleteafterinstall overwritereadonly; CopyMode: alwaysskipifsameorolder; Components: ALIASEGDTA
Source: C:\\Programmer\\ISTool\\MiniReg.exe; DestDir: {tmp}; Flags: deleteafterinstall overwritereadonly; CopyMode: alwaysskipifsameorolder; Components: BDE
Source: C:\\Programmer\\ISTool\\BdeInst.dll; DestDir: {tmp}; Flags: deleteafterinstall overwritereadonly; CopyMode: alwaysskipifsameorolder; Components: BDE
Source: SetupReg.exe; DestDir: {tmp}; Components: ODBCEGDTA
; END BDE
; BEGIN BDE

[Run]
; Alias EGDTA
Filename: {tmp}\\MiniReg.exe; Parameters: \"\"\"{tmp}\\BdeInst.dll\"\"\"; Components: BDE
Filename: {tmp}\\SetupReg.exe; Components: ODBCEGDTA; Parameters: ODBC
Filename: {tmp}\\AddAlias.exe; Parameters: \"\"\"-EGDTA\"\" \"\"EGDTA\"\" \"\"Client Access ODBC Driver (32-bit)\"\" \"\";SQLQRYMODE:SERVER\"\" \"\";ODBC DSN:EGDTA\"\" \"\";USER NAME:AS400USER\"\"\"; Components: ALIASEGDTA
; END BDE
; BEGIN BDE

[Components]
Name: BDE; Description: Borland Database Engine; Flags: restart; Types: custom compact full
Name: ODBCEGDTA; Description: ODBC configuration of EGDTA; Types: custom compact full
Name: ALIASEGDTA; Description: BDE-ALIAS for EGDTA; Types: custom compact full

[InstallDelete]
Name: {tmp}\\AddAlias.exe; Type: files; Components: ALIASEGDTA
Name: {tmp}\\MiniReg.exe; Type: files; Components: BDE
Name: {tmp}\\BdeInst.dll; Type: files; Components: BDE
Name: {tmp}\\SetupReg.exe; Type: files; Components: ODBCEGDTA
</SNIP>

Inden du (eller andre) stiller spørgsmål, så kig på det link som cluas_w foreslog da dette meget godt beskrive hvordan BDE installeres/konfigureres via InnoSetup.
Avatar billede sl5049 Nybegynder
13. juni 2001 - 08:22 #11
Jeg havde i glæde over at det virkede helt glemt at uddele point. Tak for hjælpen. Jeg anvendte som anbefalet Inno Setup, hvor det var muligt at medtage BDE på en let måde. Jeg løste Alias-problemet med det lille addAlias program der lå hos jrsoftware. Det virker kanon godt ! TAK.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester