Rutas relativas en imágenes

Tengo un formulario con una imagen que depende del campo de una tabla. Cuando se activa el registro del formulario se establece la propiedad 'picture' al valor del campo de la tabla, que es la ruta de la imagen. El problema es cuando la imagen se encuentra en una unidad de red, ¿ya que la propiedad picture no acepta cosas como "\\servidor\directorio\imagen.jpg". Alguna idea sobre como hacerlo?

2 respuestas

Respuesta
1
En ocasiones, es necesario que un determinado orchivo este en la maquina local, no solo para este caso concreto que necesitas ahora.
En esos casos lo que suelo hacer es crear una conexión de unidad de red a la carpeta compartida del servidor para que aparezca en mi explorador como la unidad H: (por ejemplo), que ya puedo utilizar en casos como el tuyo.
Si no sabes como crear una unidad de red, puedes hacerlo desde el explorador. Esta en Herramientas--> Conectar a unidad de red.
Creo que no me he explicado bien:
La base de datos esta en un servidor remoto, al igual que el directorio con las imágenes. El problema es que la propiedad 'picture' no acepta rutas relativas del tipo \\unidad_de_red\fichero, y las imágenes y la bd se encuentran en unidades de red diferentes. No quiero hacer referencia a la unidad donde están las imágenes a partir de la letra de la unidad que YO tengo asignada en mi ordenador, porque en otro equipo podría ser diferente.
He colocado un botón en un formulario de prueba con el siguiente código y ha funcionado bien.
Private Sub Comando16_Click()
Me.Picture = "\\ntserver\DepTeComer\logo.jpg"
End Sub
Mi formulario estaba en un .mdb con formato Access2000 ejecutándose bajo AccessXP.
En este momento no puedo quitar de su puesto a nadie que tiene aun la version 97, pero si esa es tu version y no puedes hacerlo, escríbeme de nuevo y probare.
Si, tengo la 'gran suerte' de tener que vérmelas con access 97
Efectivamente, acabo de comprobar que con la version 97 no funciona.
Por alguna oscura razón, ni siquiera consigo que actualize el formulario con una imagen de la maquina local.
En cualquier caso, lo que he hecho es colocar un control image que cubre todo el formulario y el resto de controles encima. El control image no ha puesto ninguna pega a la asignación:
Imagen1.Picture = "\\ntserver\DepTeComer\logo.jpg"
En el evento resize del formulario, obligo a que image 1 tenga siempre el mismo Width y Heigth que el formulario, con lo que el efecto final es el buscado.
Si esta en tu mano, actualiza la version, Access ha mejorado mucho después de esa magnifica version del 97. No hay razón para hablar mal de ella, fue y es muy buena, pero se ha quedado atrás en algunos aspectos.
Respuesta
Puedes implementar una función o rutina que te copie la imagen del servidor a un directorio o carpeta temporal y de ahí relacionar la imagen.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas