J'ai écrit un programme Open Source que j'ai publié en tant que GPL construit à l'aide du kit de développement logiciel Qt4 LGPL. Ce programme a la capacité de rechercher une base de données Sqlite3 optionnelle pour les données.Le programme Qt4 se bloque à moins que le SDK ne soit installé
Voici ce qui me fait perdre la tête. Je compile le programme sur la machine de développement. Lorsque j'essaie de l'exécuter, je peux avoir des erreurs sur les DLL manquantes. Je copie ces dlls dans le même répertoire que l'exécutable et il fonctionne maintenant bien (mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtSql4.dll, QtGui4.dll), y compris la recherche de base de données.
Maintenant, si je copie ce dossier avec l'exécutable et les DLL sur une nouvelle machine sur laquelle le SDK n'est pas installé, il fonctionne correctement jusqu'à ce que j'essaie de chercher. Dès que je clique sur le bouton de recherche, je peux l'erreur suivante:
Title: Microsoft Visual C++ Runtime Library
Runtime Error!
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
Je puis télécharger et installer le SDK, ne rien faire d'autre, je peux maintenant exécuter le programme et rechercher le fichier sqlite3 très bien!
Quelle magie manque-t-il?
P.S. Les deux machines sont des systèmes Windows XP fraîchement installés.
Et vous avez besoin http://www.dependencywalker.com/ –
Je pense que vous avez touché à ce sujet ici. Le plugin dont j'ai besoin est qsqlite4.dll. Comment diable puis-je l'utiliser? Dois-je ajouter du code à mon programme pour le charger explicitement? J'ai joué avec le mettre dans différents endroits et en ajoutant un fichier qt.conf pendant plus d'une heure sans chance. – Kyle
@Kyle: J'ai édité ma réponse à ce que je pense fonctionnera. –