• ¿Quieres apoyar a nuestro foro haciendo una donación?, entra aquí.

App Sqlite no "corre" en otro PC

Luk0s

El Cangri
Registrado
2011/02/22
Mensajes
4.838
Sexo
Macho
Sé que postear algo acá es como ir al cementerio... pero la tiro igual por si acaso.
Primera vez que ocupo Sqlite... al viejito de la pega se le ocurrió que quiere llevar una aplicación en su pendrive y que funcione en todos lados.
La aplicación ya está lista y todo... el drama es cuando la pruebo en otro PC, la mugre no funciona.
Sale el típico mensaje de
No se puede cargar el archivo o ensamblado System.Data.sqlite.dll
siendo que tengo la dll en la carpeta donde está la aplicación.
He buscado en google y no encuentro nada que se acerque a mi problema.
Como digo, es primera vez que ocupo Sqlite así que estoy bien perdido en ese sentido.
La app está escrita en C# y la compilo con Visual Studio Community 2015
 
Hace años que no trabajo con .net, pero creo que había una opción para incluir directamente la dll en el proyecto, cosa que quede dentro del ejecutable. Otra cosa, el pc donde tienes atados tiene instalado el .net framework?
 
será por la version del SO?
 
Cómo hiciste la importación de la dll? lo mejor sería importarla directamente desde la carpeta que designaste en el pendrive y tratar de correrla así. Me tinca que la referencia a la dll la estás haciendo desde el sistema y no desde tu carpeta del proyecto:
References -> agregar referencias -> examinar -> dll de sqlite.
 
Al final logré solucionarlo.
En el caso que alguien tenga el mismo problema:
  • Para no tener dramas con la compatibilidad (porque no conocía los PCs donde el viejito quiere correr su aplicación) me descargué la librería para x86 desde la página de Sqlite.
  • Siguiendo con la compatibilidad, el proyecto lo hice para x86 (mismo argumento).
  • Al probarlo en los PCs de mis compañeros, salía ese error raro... pero en el mío no. Todos tenemos Win10 en la oficina, así que no iba por ahí el problema. Resulta que, entre tanta cosa que instalé en MI PC, tenía las 2 librerías de sqlite (tanto x86 como x64) y por eso no me lanzaba error.
  • Al publicar la app, Visual Studio me tiraba el dll en la misma carpeta, así que ese tampoco era el drama. Lo mismo con la BD, estaba en la misma carpeta.
  • El error concreto era que no "encontraba" el .dll de sqlite.
  • Cuento corto, moví tanto la compatibilidad como el driver sqlite a x64 y pude abrir la aplicación en los demás PCs... salvo por otro problema ... que no encontraba otro dll... un tal sqlite.interop.dll . Éste archivo no se puede agregar como referencia, así que hay que anexarlo como "archivo" y decirle que lo agregue a las publicaciones que se hagan.
Con todos esos pasos, logré hacerlo funcionar en los demás PCs aquí en la oficina y no debería tener problemas en ningún otro lado... y, obviamente sin instalar nada fuera de lo común (que es la idea del viejito... plug & play)
 
Volver
Arriba