web-dev-qa-db-ja.com

「DLLのロードに失敗しました:%1は有効なWin32アプリケーションではありません。」 Pygame向け

最近Python 3.1とPython 3.1のPygameモジュールをインストールしました。コンソールでimport pythonと入力すると、次のエラーが表示されます。

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.

助けてください!

90
Parseltongue

OSのアーキテクチャが原因である可能性があります。 OS 64ビットで、64ビットバージョンのPythonをインストールしていますか? 32ビットバージョン Python 3.1Pygame の両方をインストールすると役立つ場合があります。これは公式に32ビットでのみ利用可能で、この問題に直面することはありません。

64ビットpygameは維持されていることがわかります here 、Pygameのみをアンインストールして、既存のpython3.1に64ビットバージョンをインストールすることもできます。

147
Senthil Kumaran

質問はずっと前に答え​​られたように見えますが、解決策は私にとってはうまくいきませんでした。そのエラーが発生したとき、 PyWin32 をダウンロードすることで問題を修正できました。

8
Alexis

この問題を解決するために、Python 32ビットバージョンとpsycopg2 64ビットバージョンをインストールしました。 psycopg2 32ビットバージョンをインストールし、それが機能しました。

3
Jon

Python 2.7.9でこの問題があり、Python 2.7.10に更新することで解決しました(この質問の回答時に未公開)。

2
Adam Francey

同様の問題の別の考えられる原因は、x64プロセスでx86共通コントロールdllをロードしようとするcx_freezeマニフェストのprocessorArchitectureである可能性があります。このパッチで修正する必要があります。

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

1
liborm