acceso a bd access en una lan

05/07/2003 - 14:07 por malaka | Informe spam
Hola, quiero que mi aplicacion acceda a una bd access que está en otro
equipo de la red local que tiene win2k pro. Actualmente mi cadena de
conexion para acceder a la bd en mi mismo equipo es la siguiente:

cadConex = "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=" & App.Path & "\bd\libros.mdb;" & _
"Uid=;" & _
"Pwd=XXXX;"

¿que tendria que cambiar en la cadena de conexion para que funcionara?
Supongo que además tendré que compartir la carpeta, pero quisiera que cuando
acceda la aplicacion, no me pida usuario y contraseña para acceder a esa
carpeta compartida (porque sí quiero que no entre cualquiera a través de la
red) , ¿cómo le indico en el codigo el usuario y contraseña de la carpeta
compartida para que sea transparente al usuario de la aplicación?

Gracias.

Preguntas similare

Leer las respuestas

#1 Yan Cantuarias
05/07/2003 - 16:25 | Informe spam
Crea una unidad de red en la PC cliente que apunte a una carpeta compartida
de tu Server, en esa carpeta compartida coloca el ejecutable y la Base de
Datos (dentro de tu subcarpeta BD) y listo...
Claro que tienes que tener intalado en tu PC Cliente las librerias que
utiliza tu Sistema

Saludos

YAN


"malaka" escribió en el mensaje
news:
Hola, quiero que mi aplicacion acceda a una bd access que está en otro
equipo de la red local que tiene win2k pro. Actualmente mi cadena de
conexion para acceder a la bd en mi mismo equipo es la siguiente:

cadConex = "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=" & App.Path & "\bd\libros.mdb;" & _
"Uid=;" & _
"Pwd=XXXX;"

¿que tendria que cambiar en la cadena de conexion para que funcionara?
Supongo que además tendré que compartir la carpeta, pero quisiera que


cuando
acceda la aplicacion, no me pida usuario y contraseña para acceder a esa
carpeta compartida (porque sí quiero que no entre cualquiera a través de


la
red) , ¿cómo le indico en el codigo el usuario y contraseña de la carpeta
compartida para que sea transparente al usuario de la aplicación?

Gracias.




Respuesta Responder a este mensaje
#2 malaka
05/07/2003 - 21:19 | Informe spam
Gracias por las respuestas, las probaré el lunes ya que ahora no tengo red.


"Leonardo Azpurua" <l a z p u r u a g (arroba) c a n t v (punto) n e t>
escribió en el mensaje news:
Hola, Malaka:

La primera parte es simple.

Basta con que en la cadena de conexión reemplaces "App.Path" por la
dirección de la carpeta de red que contiene el MDB.

Donde la marrana comienza a torcer el rabo es cuando quieres que la BD


esté
en una carpeta compartida protegida por contraseña y que los usuarios no
tengan que escribir el password.

Entonces necesitas hacer un mapeo de una unidad virtual local hacia el
recurso (carpeta) compartido del servidor donde reside la MDB.

Para ello, debes usar el API wNetAddConnection, lo cual es relativamente
simple:

Declare Function WNetAddConnection Lib "mpr.dll" Alias


"WNetAddConnectionA"
(ByVal lpszNetPath As String, ByVal lpszPassword As String, ByVal
lpszLocalName As String) As Long

Primero asignas una unidad de red:

WNetAdConnection \\Servidor\Libros, "XXXX", "G:"

y luego te conectas a la BD:

> cadConex = "Driver={Microsoft Access Driver (*.mdb)};" & _
> "Dbq= G:\libros.mdb;" & _
> "Uid=;" & _
> "Pwd=XXXX;"

NOTA: Elaborado sobre información contenida en la ApiGuide, disponible en
www.allapi.net.
No pude probar la solución propuesta, por eso no estoy seguro del formato
del parámetro lpszLocalName de WNetAddConnection. Deberías probar con "G",
"G:" y "G:\" (por supuesto que puedes reemplazar G por lo que mejor te
parezca).

Salud!

Leonardo
MS MVP


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida