Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-05-2003
Avatar de Rox77
Rox77 Rox77 is offline
Miembro
 
Registrado: may 2003
Ubicación: Caceres
Posts: 44
Poder: 0
Rox77 Va por buen camino
Exclamation Instalar un programa que usa Access

Hola, tengo algunas dudas sobre programas de bases de datos que usan Access con Delphi. Yo programo pequeñas aplicaciones en Delphi 3 hasta ahora usando Paradox pero hace un año o así alguien me pidio un programita para manejar una bd Access 97. Yo no habia usado Access con Delphi y rebuscando encontre que se puede usar pero me volvi loco para realizar las conexiones, etc. Para empezar:

1. Uso el BDE (pues en Delphi 3 es lo unico que puedo hacer)
2. Uso driver nativo de Delphi MSACCESS.
3. Y descubri que con la DLL por defecto del BDE para MSACCESS la IDAO32.DLL no podia acceder a las bases de datos de access 97 pero por casualidad comprobe que con IDA3532.DLL si que podia.
Hasta aqui lo que yo hago para trabajar. Ahora mis problemillas.

Si quiero que una aplicacion mia que use access funcione un un pc distinto al mio tengo que: a) instalar el BDE b)copiar la dll IDA3532.dll que no viene por defecto c) ponerla como dll en la configuracion del driver usando BDEAdministrator o BDConfig. d) instalar MSJET4 y MDAC

Si en el pc ya existe BDE no se si puedo reinstalarlo a mi manera para poder poner el driver IDA3532 sin que esto afecte al resto de la configuracion de ese BDE o si puedo cambiar ese driver desde codigo (primera duda para que me ayuden).

Ademas me parece muy engorroso todo este proceso para una aplicacion a lo mejor sencillita, pero me gustaria saber usarlo correctamente ¿lo estoy haciendo bien o es mucho mas sencillo y me estoy complicando la vida?

¿Alguien usa bases de datos access97 a traves del BDE sin usar ADO ni nada como yo y me puede contar sus experiencias?

Cualquier cosilla que me podais contar seguro que me viene bien...el saber no ocupa lugar (o por lo menos las neuronas no se han quejado todabia ;-) ) Gracias por molestarse en leer todo esto. :-)

Saludos.
Responder Con Cita
  #2  
Antiguo 29-05-2003
obiwuan obiwuan is offline
Miembro
 
Registrado: may 2003
Posts: 488
Poder: 22
obiwuan Va por buen camino
Cita:
Posteado originalmente por Rox77
Si en el pc ya existe BDE no se si puedo reinstalarlo a mi manera para poder poner el driver IDA3532 sin que esto afecte al resto de la configuracion de ese BDE o si puedo cambiar ese driver desde codigo (primera duda para que me ayuden).
Solamente en el caso en que el ordenador que tenga el BDE, NO tenga ese fichero dll, deberías de copiarlo y reconfigurar luego el driver de Access. Si instalas de nuevo el BDE machacarás los alias que tenga definidos, con lo que los otros programas no podrán funcionar.

Cita:
Ademas me parece muy engorroso todo este proceso para una aplicacion a lo mejor sencillita, pero me gustaria saber usarlo correctamente ¿lo estoy haciendo bien o es mucho mas sencillo y me estoy complicando la vida?
Pues así es, es un poco engorroso, pero por ende, es una aplicación no pirateable, ya que sólo el programador que la hace sabe lo que hace. Sería necesario alguien muy experto para poder "crakear" una aplicación de este estilo. Es un engorro tener que configurar todos los terminales en los que va correr tu aplicación a mano, pero te aseguras que la copia tal cual de la misma no funciona.

Cita:
¿Alguien usa bases de datos access97 a traves del BDE sin usar ADO ni nada como yo y me puede contar sus experiencias?
Otra cosa añadida es que si el ordenador no tiene Access 97 instalado o preinstalado, tu aplicación tampoco funcionará. Es decir, con Access 2000 o XP tu aplicación no funciona.
Responder Con Cita
  #3  
Antiguo 13-06-2003
Kafu Kafu is offline
Miembro
 
Registrado: may 2003
Ubicación: Bilbao
Posts: 117
Poder: 22
Kafu Va por buen camino
Tengo exactamente el mismo problema. No hay manera de hacer este cambio desde Delphi? Es decir una pequeña aplicación que se encargue de cambiar el driver.. Un saludo,





F.T.G.
Responder Con Cita
  #4  
Antiguo 13-06-2003
Avatar de Rox77
Rox77 Rox77 is offline
Miembro
 
Registrado: may 2003
Ubicación: Caceres
Posts: 44
Poder: 0
Rox77 Va por buen camino
Hola:

He estado un poco perdido por ahi...jeje

Bueno bueno...gracias por contestar lo primero. Lo segundo, probando probando las cosas se van averiguando.

Vamos por partes YO SI HE CONSEGUIDO CAMBIAR EL DRIVER POR CODIGO ... pero no me se el codigo de memoria...jaja ...ya lo traere..prometido. Otra cosa yo tengo un instalador del BDE que reinstala el BDE y conserva los alias...por lo menos cuando lo he probado.

Uso el MSACCESS nativo de BDE y no necesito crear alias a mano.
Me he bajado el MDAC_type.exe y el MSjet40.exe de microsoft y no me hace falta tener instalado el access ni 97 ni 2000 para que funcionen las aplicadios D3+BDE+Access (siento la euforia pero me costo mucho averiguar todo esto). Aunque he conseguido probar ADO con Access 2000 y Delphi 7 y pufffff...tendre q ahorrar...jeje.

Aaaa (esto ya es regocijo lo siento) compilo toda la ruta de la bd access al arrancar la aplicacion asignando la ruta por parametros para asi poder mover la aplicacion de directorio y no de error.

Buffff...que retaila de cosas...en fin eso es todo. SALUDOS.
Responder Con Cita
  #5  
Antiguo 13-06-2003
Kafu Kafu is offline
Miembro
 
Registrado: may 2003
Ubicación: Bilbao
Posts: 117
Poder: 22
Kafu Va por buen camino
Cita:
Vamos por partes YO SI HE CONSEGUIDO CAMBIAR EL DRIVER POR CODIGO ... pero no me se el codigo de memoria...jaja ...ya lo traere..prometido.
Te lo agradecería encarecidamente...
Responder Con Cita
  #6  
Antiguo 16-06-2003
Kafu Kafu is offline
Miembro
 
Registrado: may 2003
Ubicación: Bilbao
Posts: 117
Poder: 22
Kafu Va por buen camino
Bueno sólo por si alguien más está interesado, aquí hay un link más que interesante para hacer lo que pedía:

http://info.borland.com/devsupport/b...ginfolist.html

Un saludo,




F.T.G.
Responder Con Cita
  #7  
Antiguo 17-06-2003
Avatar de Rox77
Rox77 Rox77 is offline
Miembro
 
Registrado: may 2003
Ubicación: Caceres
Posts: 44
Poder: 0
Rox77 Va por buen camino
Hola:

Lo prometido es deuda (Kafu) asique aqui tienes...espero te sirva de algo.


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, DBTables, BDE;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Session1: TSession;
Memo1: TMemo;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
function IsBDEExist : boolean;
begin
Result := (dbiInit(nil) = 0);
end;
begin
if IsBDEExist then showmessage('SI, BDE esta instalado')
// Existe
else showmessage('NO, BDE no esta instalado. Instalalo.');
// No existe
end;

procedure TForm1.Button2Click(Sender: TObject);
var
DriverParams: TStringList;
begin
DriverParams := TStringList.Create;
try
{ add the parameters that you want to change only. The default for
this param is 31. }
DriverParams.Add('DLL32=IDDA3532.DLL');

{ call modify driver with name of driver and list of params }
session1.ModifyDriver('MSACCESS',DriverParams);

{ call this if you want to save the changes in the BDE for all
applications to use, will only take affect after all BDE applications
have been unloaded on the system. }
session1.SaveConfigFile;
finally
DriverParams.Free;
end;
end;


procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;

end.



Saludos.
Responder Con Cita
  #8  
Antiguo 23-06-2003
Kafu Kafu is offline
Miembro
 
Registrado: may 2003
Ubicación: Bilbao
Posts: 117
Poder: 22
Kafu Va por buen camino
Ah, mucho más sencillo de lo que tenía. Gracias y un saludo,



F.T.G.
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 14:15:37.


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