Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Utilización de InoSetup (https://www.clubdelphi.com/foros/showthread.php?t=16182)

Tonio 18-11-2004 18:00:23

Utilización de InoSetup
 
He utilizado InoSetup con una aplicación que utuliza DB Paradox, pues bien la instalación funciona, desinstalo Delphi, para comprobrlo sin él, pero nada de nada, me dice que falta la DBE.
Se que se le debe incluir, pero alguien sabe como o donde.
Os podéis imaginar que la idea es instalar la aplicación en una máquina que no tiene BDE instalado.

He intentado utilizar BDE32, pero no entiendo su filosofía:
'Este componente permite ejecutar aplicaciones sin tener el BDE instalado. Sólo necesita un directorio con las dll's del bde y el se encarga de todo'.
¿Quiere decir que yo debo copiar de mi máquina las DLL,s del BDE y copiarlas en la que deseo instalar la aplicación?. Si es una DLL, ¿Donde 'le digo' que está el directorio?
Por cierto en el Club no funciona la descarga del BDE32.
Gracias de antemano.
Un saludo.
Tonio.

Dantael 18-11-2004 19:44:05

Un poco largo pero lo hace
 
Mira en el FAQ de inno setup te dice bien como hacerlo, busca esta liga en el FAQ BDE (Borland Database Engine) bajo la sección How Do I Install...? pero para que no tengas los problemas que yo tube te pongo esto:

Primero debes bajar el MiniReg.exe, el Bdeinst.dll, Bdeinst.rar y AddAlias y ponerlos en el directorio de tu aplicación(Para bajar los archivos has click aqui y buscalos http://www.jrsoftware.org/iskb.php?a=bde
), luego en el inno setup script el en la sección [File] agregas las lienas abajo mencionadas de código, además de los archivos que tu pongas, o sea, el ejecutable tablas etc etc
luego en [Run] ve el código de abajo.

El AddAlias esta hecho en delphi lo puedes modificar para ponerle el nombre del alias que utilizas para la base de datos.
busca esta linea GAlias: string = 'Alias'; y en ves de 'Alias' Pon el alias que tú utilizas entre ' '
después correlo para crear el ejecutable "recuerda ponerlo en donde tienes las tablas por que guarda la ruta"
para más explicito (si tus tablas y proyecto estan en c:\proyecto ahí debes poner el AddAlias.exe y luego compilarlo para que genere el ejecutable)



[File]
...(archivo ejecutable y otros)
...
Source: "C:\proyecto\AddAlias.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "MiniReg.exe"; DestDir: "{tmp}"
Source: "BdeInst.dll"; DestDir: "{tmp}"

[Run]
Filename: "{tmp}\MiniReg.exe"; Parameters: """{tmp}\BdeInst.dll"""
Filename: "{app}\AddAlias.exe"; Description: "{cm:LaunchProgram,AddAlias}"; Flags: runhidden
...(y aquií tu programa si quieres que se ejecute después de la instalación)

Recuerda que en el orden que acomodes los programas de esa manera se ejecutaran

Saludos

Tonio 18-11-2004 22:00:01

Utilización InoSetup
 
Tanto MiniReg.exe como "BdeInst.dll ya los había bajado, los ponía en en el apartado [Files], pero no en el directorio de las DB.
Pues lo voy a probar ya.
Muchas gracias.
Un saludo.
Tonio

Dantael 18-11-2004 22:10:27

de que!
 
De nada, espero que funcione

Saludos

Tonio 20-11-2004 12:45:05

Utilizacion de InoSetup
 
Perdona Dantael, pero vuelvo a solicitar tu ayuda.

Abajo pongo el Script que utilizo.

C:\Apeb2\DatosBA es el ditrectorio donde tengo las DB, el ejecutable, AddAlias, Minireg y BdeInst.
El alias es DatosBA, igual que el directorio, lo he cambiado en AddAlias.exe.
Compilo y crea el instalador, lo ejecuto y me dice:

'Exception EDBEngineError in module Biblianual.exe at 000BF12A
An ocurred while attempting to initialize the Borlan Database Engine (error $ 2108)'

En vez de desinstalar Delphi, le cambio el nombre al directorio de la BDE.

[Setup]
AppName=Biblia Anual
AppVerName=My Program 1.5
AppPublisher=My Company, Inc.
AppPublisherURL=http://www.mycompany.com
AppSupportURL=http://www.mycompany.com
AppUpdatesURL=http://www.mycompany.com
DefaultDirName={pf}\Biblia Anual
DefaultGroupName=c:\Apeb2
Compression=lzma
SolidCompression=yes

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "C:\ApeB2\DatosBA\Biblianual.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\AddAlias.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\MiniReg.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\BdeInst.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Icons]
Name: "{group}\Biblia Anual"; Filename: "{app}\Biblianual.exe"
Name: "{userdesktop}\Biblia Anual"; Filename: "{app}\Biblianual.exe"; Tasks: desktopicon

[Run]
Filename: "{app}\Biblianual.exe"; Description: "{cm:LaunchProgram,Agenda}"; Flags: nowait postinstall skipifsilent

llonigualker 20-11-2004 13:00:44

Creo que el proceso lo haces al reves y te falta algo en el innosetup

Si desinstalas delphi, desistalas a la vez el bde , osea, que el proceso seria el siguiente:

Primero le añades esto a tu .iss

[Run]
Filename: "{app}\MiniReg.exe"; Parameters: """{app}\BdeInst.dll"""

Lo compilas y se supone que lo tienes listo para instalar. Desinstalas delphi. Instalas la aplicacion tuya y veras como se instala el bde y funciona tu programa

Saludos.

Tonio 20-11-2004 15:19:47

Utilización de InoSetup
 
Lo de la BDE creo se ha solucionado, llonegualker, creo es así tu nick, pues bien, pongo este codigo para que se ejecute:

Filename: "{app}\MiniReg.exe"; Parameters: """{app}\BdeInst.dll"""
Filename: "{app}\AddAlias.exe"; Description: "{cm:LaunchProgram,AddAlias}"; Flags: runhidden
Filename: "{app}\Biblianual.exe"; Description: "{cm:LaunchProgram,Biblia Anual}"; Flags: nowait postinstall skipifsilent

Pues bien ahora el error que me da es que no encuen tra el path c:\Apeb2\DatosBA\DATA\mi.DB, pongo el data en mayúsculas porque no se de donde sale, porque en source el código que pongo es:

[Files]
Source: "C:\ApeB2\DatosBA\Biblianual.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\MiniReg.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\AddAlias.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\BdeInst.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\ApeB2\DatosBA\*"; DestDir: "{app}"; Flags: ignoreversion

y ahí no hay ningun DATA.

¿Sabes cual puede ser el problema y la solución.

Otro problema que tengo es saber de donde sale lo de (app), veo que es un directorio, por eso he sustituido esa variable por un path completo y quizá pueda estar ahí el tema.

Gracias por la rápida respuesta anterior y también por la de ahora.
Un saludo
Tonio.

llonigualker 21-11-2004 09:48:39

Me alegro que lo del BDE se te haya solucionado, ahora bien, los alias los puedes crear al ejecutar la aplicacion una vez instalada y no utilizando programas externos, digo yo.

Y otra cosa

Filename: "{app}\AddAlias.exe";Description: "{cm:LaunchProgram,AddAlias}"; Flags: runhidden Esto te lo puedes ahorrar
Filename: "{app}\Biblianual.exe"; Description: "{cm:LaunchProgram,Biblia Anual}"; Flags: nowait postinstall skipifsilent y esto nunca se pone

Saludos.


La franja horaria es GMT +2. Ahora son las 08:07:44.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi