Windows - Pyinstaller d'Erreur “échec de l'exécution de script ” Lors de l'Application Cliqué
Je vais avoir un moment difficile de surmonter cette erreur, j'ai cherché partout pour que le message d'erreur et rien ne semble relatives à ma situation:
"failed to execute script new-app"
nouvelle-app est mon python GUI programme. Quand je lance pyinstaller à l'aide de cette commande:
pyinstaller.exe --onedir --hidden-import FileDialog --windowed --noupx new-app.py
Il fonctionne en douceur. En outre, lorsque j'exécute la ligne de commande pour exécuter l'interface graphique du programme, il fonctionne parfaitement et l'interface graphique est généré à l'aide de cette commande:
.\dist\new-app\new-app.exe
Mais quand je vais sur ce fichier, nous l'espérons être en mesure de cliquer sur l'application pour obtenir l'interface graphique, il me donne l'erreur dit ci-dessus. Pourquoi est-ce?
Je suis à l'aide de python2.7 et le système d'exploitation est Windows 7 Entreprise.
Toutes les entrées seront appréciés et merci beaucoup à l'avance.
Fait de la fixation de la faute de frappe!
OriginalL'auteur aBiologist | 2016-11-21
Vous devez vous connecter pour publier un commentaire.
Eh bien je crois que j'ai trouvé la solution pour ma propre question, voici comment j'ai fait:
Même si j'étais en mesure d'exécuter le programme avec succès en utilisant une commande python ainsi que d'exécuter avec succès pyinstaller et être en mesure d'exécuter l'application "new_app.exe" à l'aide de la ligne de commande mentionné dans la question, qui dans les deux cas, l'affichage de l'interface graphique avec aucun problème du tout. Cependant, seulement quand je clique sur l'application, il ne permet pas d'afficher l'interface graphique et aucune erreur n'est générée.
Donc, Ce que je fait c'est que j'ai ajouté un paramètre supplémentaire --debug dans le pyinstaller de commande et de retrait de l' --fenêtré paramètre afin que je puisse voir ce qui se passe réellement lorsque l'application est cliqué et j'ai découvert il y a une erreur qui fait beaucoup de sens quand je trace, essentiellement, il s'est plaint que "some_image.jpg" aucun fichier ou répertoire.
La raison pour laquelle il se plaint et ne se plaint pas lorsque j'ai exécuté le script de la première place ou même en utilisant la ligne de commande "./" est parce que le fichier image existant dans le même chemin d'accès que le script trouve mais quand pyinstaller créé "dist" répertoire qui a l'application du produit, il fait un parfait sens que le fichier image n'est pas là et j'ai donc déplacé pour que le répertoire dist où l'cliquable app est là!
os.path.dirname(sys.argv[0])
ouos.path.dirname(sys.executable)
. Utilisez de préférenceos.path.join
pour créer des chemins d'accès de vos fichiers de données, mais vous pouvez également changer le répertoire de travail paros.chdir
.Merci man, vous méritez plus bravo (y)
L'approche de l'aide. Je vous remercie.
OriginalL'auteur aBiologist
Ajouter cette fonction au début de votre script :
Reportez-vous à vos fichiers de données par l'appel de la fonction
resource_path()
, comme ceci:Ensuite, utilisez cette commande:
Pour plus d'informations visitez cette page de documentation.
OriginalL'auteur FREE LEARNING
Au cas où quelqu'un n'est pas d'obtenir des résultats dans les autres réponses, j'ai résolu un problème similaire par:
ajoutant
--hidden-import
drapeaux selon les besoins pour les modules manquantsnettoyer les dossiers associés et les spécifications des fichiers:
rmdir /s /q dist
rmdir /s /q build
del /s /q my_service.spec
OriginalL'auteur JacobIRR
J'ai eu le même message d'erreur et compris que j'avais écrit mon script à l'aide de l'Anaconda, mais
pyinstaller
essaie de pack de script sur pur python. Ainsi, les modules ne pas exister dans les pythons dossier de la bibliothèque de l'origine de ce problème.OriginalL'auteur Fatih1923