web-dev-qa-db-fra.com

Résolution "Échec du chargement de la DLL:% 1 n'est pas une application Win32 valide." pour Pygame

J'ai récemment installé Python 3.1 et le module Pygame pour Python 3.1. Lorsque je tape import python dans la console, je reçois le erreur suivante:

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    import pygame
  File "C:\Python31\lib\site-packages\pygame\__init__.py", line 95, in <module>
    from pygame.base import *
ImportError: DLL load failed: %1 is not a valid Win32 application.

S'il vous plaît aider!

90
Parseltongue

Cela pourrait être dû à l'architecture de votre système d'exploitation. Est-ce que votre système d'exploitation 64 bits et avez-vous installé la version 64 bits de Python? Il peut être utile d'installer à la fois la version 32 bits Python 3.1 et Pygame , qui n'est disponible officiellement qu'en 32 bits et vous ne rencontrerez pas ce problème.

Je vois que pygame 64 bits est maintenu ici , vous pouvez également essayer de désinstaller uniquement Pygame et d’installer la version 64 bits sur votre python3.1 existant, sinon optez pour les deux versions 32 bits.

147
Senthil Kumaran

On dirait que la question a été résolue il y a longtemps, mais la solution n'a pas fonctionné pour moi. Quand j'ai eu cette erreur, j'ai pu résoudre le problème en téléchargeant PyWin32

8
Alexis

J'avais installé Python 32 bits et version psycopg2 64 bits pour résoudre ce problème. J'ai installé la version psycopg2 32 bits, puis cela a fonctionné.

3
Jon

Si ce problème était sur Python 2.7.9, résolu en effectuant une mise à jour vers Python 2.7.10 (inédite lorsque cette question a été posée et répondue)).

2
Adam Francey

Une autre cause possible d'un problème similaire pourrait être fausse processorArchitecture dans le manifeste cx_freeze, en essayant de charger une dll de contrôles communs x86 dans un processus x64 - devrait être corrigé par ce correctif:

https://bitbucket.org/anthony_tuininga/cx_freeze/pull-request/71/changed-x86-in-windows-manifest-to/diff

1
liborm