Foro de elhacker.net

Programación => .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
  1.  'CONECTA A LA BD
  2.        Try
  3.            CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
  4.            CN.Open()
  5.            CargaTrabajos()
  6.        Catch ex As Exception
  7.            MsgBox("Error al intentar conectar a la B en " & file, MsgBoxStyle.Exclamation, "Fallo 5 - ")
  8.        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
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
  1.  'CONECTA A LA BD
  2.        Try
  3.            CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
  4.            CN.Open()
  5.            CargaTrabajos()
  6.        Catch ex As Exception
  7.            MsgBox("Mensaje de error: " + ex.Message + Environment.NewLine + "Codigo de error: " + ex.HResult)
  8.        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
  1.  'CONECTA A LA BD
  2.        Try
  3.            CN.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & file
  4.            CN.Open()
  5.            CargaTrabajos()
  6.        Catch ex As Exception
  7.            MsgBox("Mensaje de error: " + ex.Message + Environment.NewLine + "Codigo de error: " + CUInt(DirectCast(ex, System.Runtime.InteropServices.COMException).ErrorCode))
  8.        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
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
SOLUCIONADO !!!!!

muchas gracias amigo!!!


Para esto estamos :) Saludos.