** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Problema acceso a carpeta compartida en servidor
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoProblema acceso a carpeta compartida en servidor

 Responder Responder
Autor
Mensaje
manolochantada Ver desplegable
Nuevo
Nuevo


Unido: 12/Noviembre/2016
Localización: Lugo
Estado: Sin conexión
Puntos: 27
Enlace directo a este mensaje Tema: Problema acceso a carpeta compartida en servidor
    Enviado: 24/Noviembre/2019 a las 17:57
Saludos a todos.
Estoy intentando desde vba para access establecer una conexión a una carpeta compartida de un servidor Linux. Brujuleando por la red he encontrado algo que funciona parcialmente. Os pongo el código:
Option Compare Database
Function Establecer_Conexion()
 Dim NomeLocal As String
 Dim NomeRed As String
 Dim usuario As Variant
 Dim Password As Variant
 NomeLocal = "" 'Mapeamos sin asignar letra. Si quixeramos poder?amos por por ex. Z:
 NomeRed = "\\servidor\carpeta"
 usuario = "prueba"
 Password = "1234"
 If Mapear_Unidad_De_Red(NomeLocal, NomeRed, usuario, Password) Then
    Aviso = MsgBox("CONEXION A SERVIDOR CORRECTA", vbOKCancel, "ATENCI?N")
 Else
    Aviso = MsgBox("ERROR DE CONEXION A SERVIDOR", vbOKCancel, "ERROR")
 End If
End Function
Function Mapear_Unidad_De_Red(LocalName As String, RemoteName As String, Optional UserName As Variant, Optional Password As Variant) As Boolean
'MANEJADOR DE ERRORES PARA LA FUNCI?N
On Error GoTo ErrFunction
Dim obj_Wsh As WshNetwork
On Local Error Resume Next
'NUEVO OBJETO WshNetwork
Set obj_Wsh = New WshNetwork
'VERIFICAR LOS PARAMETROS DE USUARIO Y CONTRASE?A
If Not (IsMissing(UserName) And _
             IsMissing(Password)) And _
            txtUsuario <> vbNullString And _
             txtPassword <> vbNullString Then
    obj_Wsh.MapNetworkDrive LocalName, RemoteName, , UserName, Password
Else
    obj_Wsh.MapNetworkDrive LocalName, RemoteName
End If
Select Case Err.Number
    Case 0 'NO HUBO ERROR
    Mapear_Unidad_De_Red = True
    'ELIMINA LA REFERENCIA
    Set obj_Wsh = Nothing
    Exit Function
    Case -2147024829
        MsgBox " El recurso de red no existe ", vbCritical
    Case -2147024811
        MsgBox " El recurso de red ya est? mapeado ", vbCritical
    Case -2147022646
        MsgBox " error: Verifique si el nombre de " & "la unidad es correcto ", vbCritical
    Case Else
       'MsgBox "Nombre de usuario o password incorrecto", vbCritical
    End Select
    Mapear_Unidad_De_Red = False
    'ELIMINA LA REFERENCIA
    Set obj_Wsh = Nothing
Exit Function
ErrFunction:
    MsgBox Err.Description
    'ELIMINA LA REFERENCIA
    Set obj_Wsh = Nothing
End Function

El problema que me plantea, es que si pongo las credenciales manualmente a través de Windows, luego puedo conectarme y me valida, pero si intento hacerlo desde la rutina, no me valida las credenciales. Alguna sugerencia?

Mil gracias y un saludo:
Manolo.

Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable