Test Foro de elhacker.net SMF 2.1

Programación => Programación General => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: desof en 4 Junio 2015, 22:30 PM

Título: Error en Conexion a BD por version de Office distinta
Publicado por: desof en 4 Junio 2015, 22:30 PM
Hola amigos tengo una aplicación que la he probado en 2 PCs y funciona correcto la misma conecta a una BD access con esta cadena :

Código (VB.NET) [Seleccionar]
 'CONECTA A LA BD
       Try
           CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
           CN.Open()
           CargaTrabajos()
       Catch ex As Exception
           MsgBox("Error al intentar conectar a la B en " & file, MsgBoxStyle.Exclamation, "Fallo 5 - ")
       End Try


El tema es que la estoy queriendo instar de un cliente y si bien encuentra la Base de datos me da error y supongo que es por la version del Office que en la PC del cliente tienen la 2010 y yo solo lo probe en la 2007.

Como puedo hacer?

ACLARO QUE ESTO LO ESTOY HACIENDO EN .NET
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: kub0x en 5 Junio 2015, 00:00 AM
Buenas,

la ConnectionString al parecer es correcta, tanto la versión 2010 y 2007 usan los mismos parámetros:

Access 2010: https://connectionstrings.com/access-2010/
Acess 2007: https://connectionstrings.com/access-2007/

Por favor aporta el mensaje y código de error generado en la excepción para que podamos ayudarte de forma concisa.

Saludos.
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: desof en 5 Junio 2015, 00:19 AM
Cita de: kub0x en  5 Junio 2015, 00:00 AM
Buenas,

la ConnectionString al parecer es correcta, tanto la versión 2010 y 2007 usan los mismos parámetros:

Access 2010: https://connectionstrings.com/access-2010/
Acess 2007: https://connectionstrings.com/access-2007/

Por favor aporta el mensaje y código de error generado en la excepción para que podamos ayudarte de forma concisa.

Saludos.

Hola amigo por favor dime como obtengo el Error  generado basandote en ese Code que puse. (soy novato en NET y ando un poco perdido)
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: kub0x en 5 Junio 2015, 00:38 AM
Tienes que adaptar tu código, te lo dejo bien puesto para que en el MessageBox (MsgBox) salga el tipo de error.

Código (VB.NET) [Seleccionar]
  'CONECTA A LA BD
        Try
            CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
            CN.Open()
            CargaTrabajos()
        Catch ex As Exception
            MsgBox("Mensaje de error: " + ex.Message + Environment.NewLine + "Codigo de error: " + ex.HResult)
        End Try


Simplemente escríbenos cual es el mensaje que aparece en el MessageBox al obtener el error.

Saludos.
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: desof en 5 Junio 2015, 01:02 AM
ex.HResult  no me deja ponerlo

mira http://snag.gy/OyyXA.jpg
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: kub0x en 5 Junio 2015, 01:09 AM
Fallo mio. Prueba con este fragmento.

Código (VB.NET) [Seleccionar]
  'CONECTA A LA BD
        Try
            CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
            CN.Open()
            CargaTrabajos()
        Catch ex As Exception
            MsgBox("Mensaje de error: " + ex.Message + Environment.NewLine + "Codigo de error: " + CUInt(DirectCast(ex, System.Runtime.InteropServices.COMException).ErrorCode))
        End Try


Saludos.
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: desof en 5 Junio 2015, 01:20 AM
Dice algo como esto!
Microsoft.ACE.OLEDB.12.0 'no está registrado en el equipo local
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: kub0x en 5 Junio 2015, 01:27 AM
Cita de: desof en  5 Junio 2015, 01:20 AM
Dice algo como esto!
Microsoft.ACE.OLEDB.12.0 'no está registrado en el equipo local

Al parecer falta el driver/componente necesario para realizar la interactuación del programa con la DB de Access.

Aquí te dejo la descarga pertinente -> https://www.microsoft.com/en-us/download/confirmation.aspx?id=23734

Y aquí las fuentes de donde extraje la información:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/43d6b544-7172-4fe7-babf-a541e5f6a1c9/the-microsoftaceoledb120-provider-is-not-registered-on-the-local-machine?forum=accessdev
https://social.technet.microsoft.com/Forums/office/en-US/cc10d906-0fd8-49ef-a1b0-45814bd70c55/microsoftaceoledb120-provider-is-not-registered-on-the-local-machine?forum=officesetupdeploylegacy

Instálalo y vuelve a realizar la prueba. Cualquier cosa nos comentas ;)

Saludos.
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: desof en 5 Junio 2015, 01:51 AM
SOLUCIONADO !!!!!

muchas gracias amigo!!!
Título: Re: Error en Conexion a BD por version de Office distinta
Publicado por: kub0x en 5 Junio 2015, 02:22 AM
Cita de: desof en  5 Junio 2015, 01:51 AM
SOLUCIONADO !!!!!

muchas gracias amigo!!!


Para esto estamos :) Saludos.