Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-02-2006
[JClink] JClink is offline
Miembro Premium
 
Registrado: ene 2006
Posts: 26
Poder: 0
JClink Va por buen camino
Question necesito ver ejemplos de instaladores que utilicen el Alias y el BDe

Buenas, llevo varios dias intentando resolver como crear un instalador que utiliza una base de datos comun para varios ordenadores.

No tengo ni idea de como crearlo exactamente. Consigo introducir el alias en el ordenador que tengo como cliente pero no hay ninguna base de datos asociada.

He leido todos los post acerca del inno setup y del istool pero no acabo de comprender como funciona el AddAlias.exe ni como seleccionar la base de datos del alias.

Os adjunto el codigo del IsTool:
Cita:
[Components]
Name: principal; Description: Archivos de la aplicación necesarios
Name: BBDD; Description: Base de datos
[Tasks]
Name: desktopicon; Description: Crear un acceso directo en el escritorio; GroupDescription: Additional icons:; Components: principal
Name: desktopicon\common; Description: Para todos los usuarios del PC; GroupDescription: Additional icons:; Components: principal; Flags: exclusive
Name: desktopicon\user; Description: Solo para el usuario actual; GroupDescription: Additional icons:; Components: principal; Flags: exclusive unchecked
[Dirs]
Name: {app}\bbdd; Permissions: admins-modify
Name: {app}\Administer; Components: ; Tasks: ; Languages:
[Files]
Source: Prueba 9\Project1.exe; DestDir: {app}; DestName: Clinical Administer.exe; Components: principal
Source: BBDD\bd1.mdb; DestDir: {app}\BBDD; Components: BBDD
Source: Prueba 9\*.*; DestDir: {app}\Administer; Excludes: *.~*; Components: principal
Source: Prueba 9\Imagenes\*.*; DestDir: {app}\Imagenes; Components: principal
Source: Prueba 9\Imageens\*.*; DestDir: {app}\Imageens; Components: principal
Source: Prueba 9\BDeInst.dll; DestDir: {tmp}
Source: Minireg.exe; DestDir: {tmp}
Source: AddAlias.exe; DestDir: {tmp}



[Icons]
Name: {userdesktop}\clinic; Filename: {app}\Clinical Administer.exe; WorkingDir: {app}; IconFilename: {app}\imagenes\redx01c.ico
Name: {group}\{cm:UninstallProgram,Clinical Administer}; Filename: {uninstallexe}
[INI]
Filename: {win}\ClinicalAdminister.INI; Section: InstallSettings; Flags: uninsdeletesection
Filename: {win}\ClinicalAdminister.INI; Section: InstallSettings; Key: InstallPath; String: {app}
[UninstallDelete]
Type: files; Name: {win}\ClinicalAdminister.INI
[InstallDelete]
Type: files; Name: {win}\ClinicalAdminister.INI
[Languages]
Name: sp; MessagesFile: compilerefault.isl
[Run]
Filename: {tmp}\Minireg.exe; Parameters: """{tmp}\BdeInst.dll"""; StatusMsg: Instalando el BDE...
; Alias db1
Filename: {tmp}\AddAlias.exe; Parameters: """-db1"" ""{code:RutaAlias}"" ""Microsoft Access Driver (*.mdb)"""

[LangOptions]
LanguageName=Spanish
LanguageID=$040A
[CustomMessages]
CustomFormCaption=Instalar alias de la base de datos
CustomFormDescription=CustomForm description
Código Delphi [-]
[code]
  var
    Label1: TLabel;
    FolderTreeView1: TFolderTreeView;
    ruta:string;
function InitializeSetup(): Boolean;
var
Acc97Path: String;
begin
Result := true;
//Solo si access existe.
{if(not RegKeyExists(HKLM,'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE')) then
begin
Result := False;
MsgBox('Se requiere que Microsoft Access este instalado' #13#13 'La instalación no puede continuar', mbError, MB_OK);
end;}
{if(RegQueryStringValue(HKEY_LOCAL_MACHINE,'SOFTWARE\Microsoft\Office\8.0','', Acc97Path)) then
begin
Result := False;
MsgBox('Se requiere una version de Microsoft Access 2000 o superior' #13#13 'La instalación no puede continuar', mbError, MB_OK);
end;}
end;
procedure LocalOnClick(Sender: TObject);
begin
ruta:='{app}\BBDD\bd1.mdb';
end;
procedure NuevaRutaOnClick(Sender: TObject);
begin
ruta:=FolderTreeView1.Directory + 'bd1.mdb';
end;

function RutaAlias(S: String): String;
begin
Result := ruta;
end;
procedure CustomForm_Activate(Page: TWizardPage);
begin
end;
function CustomForm_ShouldSkipPage(Page: TWizardPage): Boolean;
begin
    Result := False;
end;
function CustomForm_BackButtonClick(Page: TWizardPage): Boolean;
begin
    Result := True;
end;
function CustomForm_NextButtonClick(Page: TWizardPage): Boolean;
begin
    Result := True;
end;
procedure CustomForm_CancelButtonClick(Page: TWizardPage; var Cancel, Confirm: Boolean);
begin
end;
function CustomForm_CreatePage(PreviousPageId: Integer): Integer;
var
    Page: TWizardPage;
begin
    Page := CreateCustomPage(
      PreviousPageId,
      ExpandConstant('Seleccione la ruta donde se encuentre su base de datos'),
      ExpandConstant('Red local o remota')
    );
    { Label1 }
    Label1 := TLabel.Create(Page);
    with Label1 do
    begin
      Parent := Page.Surface;
      Left := ScaleX(0);
      Top := ScaleY(16);
      Width := ScaleX(317);
      Height := ScaleY(13);
      Caption := 'Escoja el ordenador donde se encuentre la base de datos:';
    end;
    { FolderTreeView1 }
    FolderTreeView1 := TFolderTreeView.Create(Page);
    with FolderTreeView1 do
    begin
      Parent := Page.Surface;
      Left := ScaleX(16);
      Top := ScaleY(48);
      Width := ScaleX(369);
      Height := ScaleY(161);
      Cursor := crArrow;
      Directory := '{app}\BBDD';
      TabOrder := 0;
      OnChange := @NuevaRutaOnClick;
    end;

    with Page do
    begin
      OnActivate := @CustomForm_Activate;
      OnShouldSkipPage := @CustomForm_ShouldSkipPage;
      OnBackButtonClick := @CustomForm_BackButtonClick;
      OnNextButtonClick := @CustomForm_NextButtonClick;
      OnCancelButtonClick := @CustomForm_CancelButtonClick;
    end;
    Result := Page.ID;
  end;
  procedure InitializeWizard();
  begin
       CustomForm_CreatePage(wpInfoAfter);
  end;
Cita:
[Registry]
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\ODBC Data Sources; ValueType: string; ValueName: db1; ValueData: Microsoft Access Driver (*.mdb); Flags: createvalueifdoesntexist uninsdeletevalue
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: Driver; ValueType: string; ValueData: C:\WINDOWS\system32\odbcjt32.dll
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: DBQ; ValueType: string; ValueData: {code:RutaAlias|a}
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: DriverId; ValueType: dword; ValueData: 25
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: FIL; ValueType: string; ValueData: MS Access
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: SafeTransactions; ValueType: dword; ValueData: 0
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: UID; ValueType: string; ValueData:
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1\Engines\Jet; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: ImplicitCommitSync; ValueType: string; ValueData:
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1\Engines\Jet; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: MaxBufferSize; ValueType: dword; ValueData: 2048
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1\Engines\Jet; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: PageTimeout; ValueType: dword; ValueData: 5
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1\Engines\Jet; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: Threads; ValueType: dword; ValueData: 3
Root: HKLM; SubKey: Software\ODBC\ODBC.INI\db1\Engines\Jet; Flags: createvalueifdoesntexist uninsdeletevalue; ValueName: UserCommitSync; ValueType: string; ValueData: Yes
Gracias de antemano.

Última edición por vtdeleon fecha: 02-02-2006 a las 02:49:34.
Responder Con Cita
  #2  
Antiguo 02-02-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 23
vtdeleon Va por buen camino
Eer Diabl***.....
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Necesito ayuda urgente Problema con BDE armadillo Tablas planas 4 17-03-2009 21:06:54
Instalación del BDE, con alias. Crazyro Conexión con bases de datos 2 14-06-2005 14:51:22
error con BDE / Alias ale21alito Conexión con bases de datos 3 22-03-2005 19:48:26
Como configurar un ALIAS BDE con MysQL wichosaenz Conexión con bases de datos 1 08-02-2005 22:33:29
instalacion de BDE con alias INTERBASE adfa Firebird e Interbase 2 01-07-2003 23:29:32


La franja horaria es GMT +2. Ahora son las 04:13:01.


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
Copyright 1996-2007 Club Delphi