Aplicacion en QT: error Driver no loaded con base QMYSQL



  • Buenas, tengo una aplicacion en QT 5.6, pero cuando la instalo en otro computador que no tiene instalado Qt creator, la aplicacion abre pero a la hora de conectar con la base de datos MySQL me manda el error Driver not loaded, le puse las dll respectivas acompañando al archivo ejecutable (libmysql.dll y qsqlmysql.dll), pero me sigue arrojando el mismo error, tengo instalado Wampserver 2.2 en Windows 10 de 32 bits, tengo todas las Dlls necesarias para que el programa corra, pero no hay caso de que se conecte a la base de datos por el error. ¿Alguna idea de lo que pasa y de de como solucionarlo?

    P.D.: En el computador donde hice el programa me funciona perfectamente, el problema es solo al portarlo a otro pc sin el QT Creator.



  • Crea una subcarpeta sqldrivers en la carpeta del ejecutable y copiá allí qsqlmysql.dll
    libmysql.dll debe estar en el directorio de Windows



  • Hola, gracias por tu respuesta, pero ya hice eso, use windeployqt para generar el subdirectorio del ejecutable, y copie la libreria de libmysql,dll en todo los lugares que se me ocurrio y no aun asi no funciona.



  • Probaste dentro de tu directorio del ejecutable copiar qsqlmysql.dll en plugins\sqldrivers



  • Hola

    El error "Driver not loaded" es de los más puñeteros que tiene Qt, realmente no te dice cual es la causa y pueden ser muchas.

    Por experiencia, en mi caso en linux, puede que no tenga que ver con el drivers en sí, es decir, lo cargará correctamente, el problema es que el drivers tenga que acceder a ciertas .dll que necesita y no las encuentra, de ahí el error. No sé como comprobarlo y solucionarlo en windows, pero te lo comento para que lo compruebes por que eso mismo me ha pasado con firebird.

    Un saludo



  • @hrompato

    Si, ya hice eso, lo deje dentro de la carpeta y fuera de ella e igual no funciona.



  • @juanki

    Hola, gracias por tu respuesta, vere que mas puedo hacer, pero la verdad ya me tiene desesperado, ¿que sacas con hacer una aplicacion que solo puedes correr en tu pc?



  • @Cocoroco Mirá, yo tengo aplicaciones con acceso a base de datos corriendo en PCs y servidores.
    Revisá los pasos y asegurate que está todo correcto. Fijate bien cómo efectuás la conexión



  • @Cocoroco

    Hola

    Bueno, a veces cualquier tontería complica la cosas, pero se hace hombre, no desesperes, yo tengo varias aplicaciones hechas con Qt en todas mis tiendas y no hay problema.

    Yo revisaría la instalación de MySQL, comprueba que el servidor esté activo y además añade la carpeta de instalación de MySQL al path del sistema.

    A ver si damos con el problema.

    Un saludo



  • Holas, probe cambiando la base de datos por SQLite, y me pasa el mismo error, genero la carpeta del ejecutable con windeployqt, el programa me corre pero cuando intento conectar con la base de datos me tira el mismo error de "Driver no loaded", intente con la forma debug y release, pero ninguna me funciona, algo debo estar haciendo mal, pero no se que es, segun lei con windeployqt deberia funcionar bien mi programa, pues se supone copia todo lo necesario a la carpeta. Por cierto muchas gracias por sus respuestas.



  • Muchas gracias por sus respuestas, al final pude resolver el problema, no era un error de drivers o que me faltara un archivo, era un error de codigo, bueno la verdad no se si se trate de un error pero lei en san google que a veces la forma de definir la base de datos podia ser el problema, asi que cambiando el lugar de donde la definia logre que el programa funcionara.

    Pues les dire que lo unico que hice fue cambiar la variable miBase (que estaba definida como la clase que mantenia la base de datos ) de la parte privada a la parte publica de la definicion, y solo con eso me funciono el programa.



  • Hola

    Bueno, ante todo, me alegra que se solucionara, ya te dije que se podía XD

    Como recomendación siempre hay que consultar la documentación, en este caso, si la miras, verás que te indica las peculiaridades que cada motor de bases de datos tiene para efectuar la conexión.

    Un saludo



  • usa depency walker para ver que librerias necesita


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.