Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Que esta mal en mi conexion ??? (https://www.clubdelphi.com/foros/showthread.php?t=21619)

Coco_jac 23-05-2005 17:14:59

Que esta mal en mi conexion ???
 
Hola amigos disculpen la molestia, pero no consigo solucionar el problema con mi aplicacion. Mi aplicacion corre desde CD (BD Access solo lectura). Pero no consigo realizar la conexion,me sale un mensaje : Que el motor JET no puede acceder a la BD especificada, que la BD esta abierta de forma exlusiva por otro usuario o no tengo autorizacion.
Creo que el error esta en la conexion falta especicar algo mas,pero si lo corro desde maquina todo marcha bien.Utilizo ADOConnection para tal y delphi 7.0
Mi BD esta en modo exlusiva para evitar que se escriba el archivo .ldb , cosa que he leido que se tiene que hacer y supuestamente es suficiente pero no se que pasa que no realiza la conexion.

Código:


MyConnection:TAdoConnection;
Procedure ConectarMyBase(RutaBD:WideString);
begin
MyConnection:=TADOConnection.Create(nil);
MyConnection.ConnectionString:=Provider=Microsoft.Jet.OLEDB.4.0;
Data Source='+RutaBD+';
Jet OLEDB database Password="09D0F50F605D08E07A";
Mode=Share Deny Read|Share Deny Write;Persist Security Info=False;'
MyConnection.LoginPrompt:= false;
MyConnection.Connected:= true;
end;

// Todo en la misma linea por supuesto.

RutaBD : la ruta de las diferentes BD que se usa, ya que se puede consultar varias BD.
ojala me puedan ayudar, ya que varias veces he mandado mi problema pero no consigo solucionarlo.
Muchas gracias de antemano...

marcoszorrilla 23-05-2005 17:17:32

Si funciona desde la máquina en donde esta la BD y desde otras no es porque no le has dado el camino a través de la red.

\\Maquina\Carpeta\Bd

Con este camino debe de acceder también la máquina en donde se encuentra la bd.

Un Saludo.

Coco_jac 23-05-2005 17:29:18

Gracias por responder tan rapido, pero creo que no me especifique bien, pero las BDs ( Access) estan incluidas en le CD.
Me han comentado que con ADO puedo incluso acceder a una BD sea cualquiera el disposito usado, en este caso CD, otro me han dicho que ADO trata de escribir en disco.cosa q me tiene loco...

marcoszorrilla 23-05-2005 17:39:27

Siempre que se abre un Bd Access, el sistema abre un archivo con el mismo nombre y tipo ldb, que es donde se guardan los bloqueos, supongo que por ahí viene el problema que cuando trata de crear este archivo no puede por ser el dispositivo de solo lectura, habría que investigar para que utilice por ejemplo la carpeta temp de Windows.

Un Saludo.

Coco_jac 23-05-2005 17:59:55

Lei sobre este caso y me sugerieron que la BD debe estar en modo exlusivo cosa que hago y menciono en mi codigo ,de manera que ya no se crea el bendito archivo .LDB ,lo probe como mencione en maquina con lo mecionado y no se crea el .ldb y todo bien. He visto en foros de VB con el mismo problema y me sugerian lo mismo "BD exlusiva" y es todo que no habia problema para ello, pero no se que pasa en delphi.
Gracias por tus comentarios .........


La franja horaria es GMT +2. Ahora son las 08:03:09.

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