PDA

Ver la Versión Completa : instalacion automatica


alfil123
12-01-2008, 20:57:11
hola amigos, estoy terminado un software en delphi 7 con enlace a sql2000, y bueno la verdad nose como hacer un instalador para este soft.
porfavor ayudenme

Lepe
12-01-2008, 21:00:36
Innosetup es gratuito y en su web, en "third party" tienes muy buenas utilidades.

Saludos

Paoti
14-01-2008, 21:34:46
seria bueno que nos comentaras como haces la conexión a tu base de datos...


peudes usar inno setup, install shield,


y si especificas datos como tipo de componentes para conectar a sql server, te pueden dar algunas directrices pro donde ir.


-Paoti.

alfil123
24-01-2008, 04:29:58
para la conexion a la base de datos uso ADOConection,y esta es mi cadena de conexion
dmConeccion.ADOConection.ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=BDCuyes;Data Source=EDMUNDO';

alfil123
24-01-2008, 17:30:18
hola amigos, estoy usando el inno setup para crear el instalador, pero nose como incluir la base de datos, el nombre de la base de datos es BDCuyes

Paoti
24-01-2008, 22:17:13
si agregas toda la carpeta al crear tu instalador y dentro hay una caprtea dodne esta tu base de datos, se agrega la base de datos automaticamnte....


no tengo a la mano un script de instalación, pero busca en google comoa gregar archivos extras al instalador de innosetup



pero asi de rapido, con que este en la misma ruta que tu aplicación al generar el paquete de instalación lo toma en cunata, o indicandole que relamente quieres agregar ese arhcivo...

jachguate
24-01-2008, 22:29:00
pero busca en google comoa gregar archivos extras al instalador de innosetup

No hay que ir tan lejos. F1 en el editor de scripts de INNO, y buscá la sección [Files].

Hasta luego.

;)

alfil123
06-02-2008, 02:09:41
hola amigos, el problema que enfrento es como conextar la aplicacion que se esta instalando a su base de datos, en la maquina en la que estamos instalando esta ya previamente instalado sql 2000, pero no se encuentra la base de datos BDCuyes, mi pregunta es como incluyo en el proceso de instalacion del software la creacion de la base de datos, para que la aplicacion, el software, se conecte a su base de datos

alfil123
06-02-2008, 18:25:31
hola denuevo amigos, les comento que ya tengo el scritp completo de la base de datos, ahora alguien puede darme una idea de como hacer correr el script desde el instalador que estoy hasiendo, cualquier idea es buena

Paoti
06-02-2008, 18:46:46
haber alfil.


por lo comun, en aplicacion que he estado...


la isntalacion de la base de datos se hace manual, solo se isntala el software.




se me ocurre que peudes crear una segunda aplicación, en donde desde la ventana prioncipal, indiques el servidor, el usuario, el nombre de la base de datos y corras el script que lo que haga sea crear la base de datos.


ya que desde el instalador lo veo muy dificil.


en la gran mayoria de aplicaciones, sea web o de escritorio o cliente servidor, la base de datos se instala de forma manual o mmediante una aplicación como la que describo.


en las aplicaciones que he creado, la base de datos se instala de forma manual, y tengo una aplicación de configuración que o que hace es que en cad cliente se le indiquen los parematros de conexión,



esta puede ser una solución a lo que requieres, ya tienes el esxcript que crea la base de datos y monta tu modelo de datos, ahora has una aplciación extra que haga eso y se instale con tu aplicación.

jachguate
06-02-2008, 21:17:55
Podrías hacer una aplicación como la que menciona Paoti y lanzarla desde el instalador. Incluso borrarla cuando haya terminado de ejecutarse (lo puede hacer inno setup), para no dejar algo que servirá solo una vez en la pc del usuario final.

Hasta luego.

;)

Lepe
06-02-2008, 22:50:27
Yo lo he hecho automático con innosetup. En su web tienes el apartado de "third party" y entre ellas está el InnoSetup Form Designer que te permite crear pantallas personalizadas para el instalador.

Yo lo grabé todo en una memoria USB.

Llegas al servidor y elijes una instalación personalizada, se copia la base de datos a la carpeta que se quiera, se configura todo y se graba en la memoria usb un archivo "Server.ini" con toda la configuración.

Ahora vas a los clientes, instalas la aplicación que instala un archivo "aplicación.ini" en la carpeta del programa. A continuación se lee desde el Server.ini la configuración y se escribe en el "Aplicación.ini" y voilá, todo purulando.

En cuanto a tu duda del Script, es mejor que ejecutes el scritp en tu ordenador, y con eso creas el archivo de BBDD. Ese archivo lo incluyes en el apartado "Files" de innosetup.

Saludos

danilo_candales
07-02-2008, 00:48:41
A ver si entiendo la necesidad, viendo que es SQL 2000.
Yo realmente utilizo InstallAware que permite correr scripts de SQL sin tener que crear aplicaciones extras....Y por lo que leí en este hilo inno e InstalShield no lo permiten...pero bueno, como idea ahi te va.

Entonces, el script que uso para que la BD de mi aplicación se instale corrrectamente es el siguiente:


USE master;
GO
if db_id(N'MyBase) is not null
drop database MyBase
GO
EXEC sp_attach_db @dbname = N'MyBase,
@filename1 =
N'$TARGETDIR$\MyBase.mdf',
@filename2 =
N'$TARGETDIR$\MyBase_log.ldf';
GO


Así solo copio la BD en la carpeta que corresponde ($TARGETDIR$) y ejecuto este script en el Administrador de Base de Datos...
Para no hacerlo manual, entonces la idea de una aplicación que haga esto y se borre después me parece factible.

Espero sea de utilidad,
saludos

alfil123
07-02-2008, 23:13:51
Gracias por sus respuestas chicos, Lepe bueno hay una parte que no entiendo, bueno me sugieres que ejecute el script de la datos en mi maquila y que la incluya(la bd) en los archivos que tiene el instalador, eso creo que entendí, ya teniendo la base datos incluida en el instalador ¿como incorporo la base de datos que esta en el instalador al sevidor? o solo copiendo la base de datos al servidor ya se podría ejecutar el software?, otra pregunta en que parte del innto setup indico crear el archivo Server.ini y grabarlo

Lepe
08-02-2008, 11:34:28
o solo copiendo la base de datos al servidor ya se podría ejecutar el software?,
Ignoro cómo funciona sql2000, tendrás que saber qué hace falta para que una BBDD de ese tipo funcione. Quizás algún compañero lo sepa. Otra alternativa, podría ser usar vmware para instalar un windows virtual y hacer las pruebas allí.

Innosetup tiene el apartado [Files] ahí puedes añadir todo lo que quieras y después hacer que lo instale en una carpeta predefinida {programFiles} o bien la elegida por el usuario (si usas el FormDesigner, tendrás una variable donde guardar el path elegido.

Para crear el Server.ini. Mira la ayuda de innosetup, en concreto el apartado [code] (tendrás ejemplos en la carpeta de innosetup) y el apartado de la ayuda "Pascal Scripting", donde tienes las funciones:
DirExists (muy parecida a la de delphi ;))
FileExists

Y las "Ini File Functions"
InikeyExists
GetIniString
SetIniString

entre otras muchas.


Saludos