Buenas
Para los que vieron mi post anterior sabran que no tengo mucha exp en esto de ADO.net. y como simpre sigo con problemas y esta no es la exepcion.
tengo el suiguiente code:
Dim strCN As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\Data\UsrAcs.mdb" & ";Persist Security Info=True; Password=" & cfg.PassACESS
Try
CNAcess = New OleDbConnection(strCN)
CNAcess.Open()
Return (True)
Catch exOleDb As OleDbException
MsgBox("Error: " & exOleDb.ErrorCode & vbNewLine & exOleDb.Message, MsgBoxStyle.Critical, "Error!")
Return (False)
End Try
y este me tira error en al realizar la conexion en CNAcess.open. diciendome lo siguiente:
CitarNo se puede iniciar la aplicación. Falta el archivo de información del grupo de trabajo o bien está abierto en modo exclusivo por otro usuario.
Alguien sabe como puedo solucionar este error?
Persist Security Info=True? creo que una conexión ADO.Net a Access no lleva eso.
Simplemente usa
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;
Muchas gracias por la ayuda, pero sigue diciendome lo mismo una y otra ves
http://www.connectionstrings.com/
Dulces Lunas!¡.
BlackZero ya intente con lo te du pagina, pero no me da, yo creo que mejor vuelvo y creo la base de datos a ver si el error esta es en ella, te agradezco mucho la ayuda...
esta mal la cadena, proba esta, es la que uso y anda, con la que estas usando tira ese error efectivamente.
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=base.mdb;Jet OLEDB:Database Password=mipass;"
saludos.
Bueno he notado que cunado le coloco la contraseña a la base de datos y uso el string se me presenta este error, hice otra base de datos y los mismos campos.... solo el error aparece cuando se llama teniendo contraseña...
Alguien sabe como solucionar este error????
ya he usado muchos tipos de conexion, la base de datos es una access 2000...
Les agradezco la ayuda
Pues debería funcionar..
Intenta creando una base de datos nueva, y le asignas a esa nueva BD un password, e intenta conectarte a ver si te sale el mismo error..
Saludos!
Si ya lo intente, y me sigue saliendo el mismo...
La base de datos en que formato esta? (2000, 2003, 2007 ?)
esta en formato 2000
Fijate que no haya otro archivo de access con el mismo nombre de la base (no recuerdo la extension, pero el icono era de unos cubitos al estilo rubik/registro de windows y con un candado abajo) que si existia signifca que la base esta abierta, por lo que no puede ser accedido por otro programa :P
En la carpeta donde esta la base, que solo este la base (.mdb) y ningun archivo con el mismo nombre y distinta extension :)
Cita de: raul338 en 29 Julio 2010, 03:46 AM
Fijate que no haya otro archivo de access con el mismo nombre de la base (no recuerdo la extension, pero el icono era de unos cubitos al estilo rubik/registro de windows y con un candado abajo) que si existia signifca que la base esta abierta, por lo que no puede ser accedido por otro programa :P
En la carpeta donde esta la base, que solo este la base (.mdb) y ningun archivo con el mismo nombre y distinta extension :)
claro, el archivo de bloqueo .ldb, eso depende como abris la base te lo genera o no.
Zeroql
podes poner un punto de interrupcion y probar que valor queda en la variable de la conexion? despues ponela aca.
Muchachos. el archivo no esta abierto, no se usa, el archivo .ldb como dicen yo lo conozco el es log de la base de datos, pero no, el error solo sucede cuando coloco la contraseña, sin ella entra como si nada, les dejo las cadenas de conexion que uso:
SIN LA CONTRASEÑA
Citar
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\Data\dbUSACS.mdb" & ";Persist Security Info=True
CON LA CONTRASEÑA
CitarProvider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\Data\dbUSACS.mdb" & ";Persist Security Info=True; Password=" & cfg.passAcess
Una vez, si no mal recuerdo, me tocó algo parecido, hay dos tipos de password en Access (creo) uno para la base de datos y otro que va en un archivo .mdw, éste último debería ser el que está dando problemas, ya que el mdw es el Access Workgroup File, que concuerda un poco con la Excepción que mostraste:
CitarNo se puede iniciar la aplicación. Falta el archivo de información del grupo de trabajo o bien está abierto en modo exclusivo por otro usuario.
Agregale esto al connection string: User ID=<userid>
Estoy casi seguro que debería funcionar. OJo no es el password de la base de datos, yo no tengo mucha experiencia con access, así que te dejo este link:
http://www.moretools.com/lessons/access_security.htm (http://www.moretools.com/lessons/access_security.htm)
Zeroql quise decir que imprimas en el Debug en valor de la variable strCN, una vez que ya se llena con los valores que le pasas...
y si no te molesta , subi el proyecto con la base, en 2 minutos lo solucionamos...
Señores ya arregle ese error, resulta que tenia mal la conexion string:
La cambien por esta:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\Data\dbUSACS.mdb" & ";Persist Security Info=False;JET OLEDB:DATABASE PASSWORD=" & cfg.passACESS
Pero resulta que ahora me genera el siguiente error!!
por favor alguien que me colabore que ya buske una posible solucion en internet y no encuentro nada...
ERROR:
CitarLa operación de múltiples pasos de OLE DB generó errores. Compruebe los valores de estado de OLE DB si es posible. No se realizó ningún trabajo.
Pueden ser muchas razones que den el error, te recomendaria que instales Virtual PC para probar tu aplicación en una máquina virtual, porque podria ser problema de tu S.O. o algo más.
jaja es la misma cadena de conexion que te dije que pongas hace como 3 post atras !!
no hace falta poner "Persist Security Info=False", ya que de forma predeterminada esta en False...
es mucho pedir que me pases el proyecto y la base que usas? si queres pasamelo por privado.