Py2exeを使用して単純なPythonゲームをexe形式に変換しようとすると、次のエラーが発生しました。
Traceback (most recent call last):
File "C:\Users\Tali\Desktop\2exe.py", line 4, in <module>
setup(console=['test.py'])
File "C:\Python\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\Python\lib\distutils\dist.py", line 953, in run_commands
self.run_command(cmd)
File "C:\Python\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 243, in run
self._run()
File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 305, in _run
dlls = self.find_dlls(extensions)
File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 389, in find_dlls
self.dll_excludes)
File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 1021, in find_dep
endend_dlls
import py2exe_util
ImportError: DLL load failed: %1 is not a valid Win32 application.
私は約1時間ウェブを検索し、プログラムの変更を試みました。何も機能しません。私のプログラムは「ランダム」ライブラリを使用していますが、このような問題が発生するケースは見たことがありません。
インストールスクリプト:
from distutils.core import setup
import py2exe
setup(console=['test.py'])
はい、両方のスクリプトは同じフォルダー(デスクトップ)にあります。重要な場合は、WindowsVistaでPython 2.7を使用して実行しています
よろしくお願いします。
私はまったく同じ問題を抱えていました。
私はWindows7 64ビットを持っているので、py2exe-0.6.9.win64-py2.6.AMD64.exeをダウンロードしました。これはpy2exeの64ビットバージョンであると思われます。しかし、それは機能しませんでした、そして私は同じエラーを抱えていました。
Py2exe-0.6.9.win32-py2.6.exeに変更しましたが、正常に動作しました。
Windows自体ではなく、32ビットまたは64ビットをpythonインストールと一致させる必要があると思います。
ちなみに、「setup.pypy2exe」または「pythonsetup.py py2exe」は、Windowsにpython pythonインストール。
プラットフォームとバージョンに適したpy2exeインストーラーをダウンロードすることで問題を解決できるようです。
ここでも同じ問題がありました。私はWindows7 64ビットで実行していて、Python 2.7をインストールしました。私の問題は、py2exe-0.6.9.win32-py2.7.exeとインストーラーをインストールしたという事実に関係していました。インストールフォルダが見つかりましたが、Pythonを見つけることができませんでした。この段階でpython setup.py py2exe
を実行すると、表示されているのとまったく同じエラーが発生しました。
次に、py2exe-0.6.9.win64-py2.7.AMD64.exeを このページ からダウンロードしてインストールしました。インストールは問題なく完了し、python setup.py py2exe
ゲームで多くのコンソール出力が行われ、buildフォルダーとdistフォルダー、および期待される実行可能ファイルが作成されました。
同じ問題に遭遇し、検索してここに来ました。 xiao-yuによるPromptの方法を試しましたが、うまくいきませんでした。だから私はこれを http://www.py2exe.org/index.cgi/Tutorial#Step52 :5.2.1から見つけました。 CランタイムDLLのバンドル
MSVCR90.dllを再配布する権限がある場合は、VisualStudioのインストールのVC\redist\x86\Microsoft.VC90.CRTにそのコピーがあるはずです。 Visual Studio 2008以降、このDLLファイルをコピーするだけでは不十分です。そこにあるマニフェストファイルも必要です。redist.txtファイルには、3つのdllすべてを配布する必要があると記載されています。変更されていないマニフェストファイルであり、他のdllを使用せずに1つのdllのみを配布することはライセンス契約に違反します(ただし、py2exeにはMSVCR90.dllのみが必要です)。redist.txtファイルからの適切なパッセージは次のとおりです。 --------------------
だから、それを試してみてください。
「MicrosoftVisualC++コンパイラfor Python 2.7」をダウンロードすることで、この問題を解決しました http://www.Microsoft.com/en-pk/download/details.aspx?id= 44266
Microsoft Visual C++ 2008再頒布可能パッケージ(x86)をインストールしてみてください: http://www.Microsoft.com/downloads/en/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en ==
py2exeは非常に古くなっているように見えます。最後のリリースは4年前です(2014年から今日は2018年です)
ホームページパート「ニュース」の最新エントリーは2008年(10歳)から。
今日py2exeでエラーが発生した場合は、別のツールを使用する方が良いと思います。
私は同じ問題に直面していました。Windows7(64ビット)でpy2exe-0.6.9.win64-py2.7.AMD64.exe
を使用してPython 2.7(32ビット)を使用していたため、問題は32ビットPythonと64を使用していたことでした。ビットpy2exe。使用しているPythonパッケージが32ビットか64ビットかわからない場合は、C:\Python27\Lib\idlelib\.
からidle.batを実行してください。
pythonウィンドウプロンプトの最初の行には、pythonパッケージの詳細が表示されます。
py2exe-0.6.9.win64-py2.7.exe
を実行して"pip uninstall py2exe"
をアンインストールし、py2exe-0.6.9.win64-py2.7.AMD64.exe
をインストールしました。
あなたのコメントから、私はあなたがコマンドプロンプトでこれをしているのを見る:
setup.py py2exe
py2exeチュートリアル の 番目のステップ から、代わりに(コマンドプロンプトで)これを行う必要があります:
python setup.py py2exe
元の質問に対するコメントをもう一度見ると、この提案はすでに行われていることがわかります。これのためにjoaquinに+1。
もう一度質問に答えようとすると、Joaquinは、これがパスの問題である可能性があるとも述べました。これを修正するのではなく、pythonファイルをC:\ Pythonにコピーする簡単なオプションを検討することをお勧めします。次にコマンドプロンプト:
cd C:\Python
python setup.py py2exe
これはいつも私のために働いてきました
お役に立てれば
あなたはpy2exeと頭痛に対処することができます、私はこれをやってみました、私がそれを正しく持っていたとしても、それはエラーになります、私は優れたpythonプログラムgui2exeを見つけました、これは非常に簡単にしますexe(またはその他のサポートされている形式)を作成します。
Gui2exe: http://code.google.com/p/gui2exe/downloads/detail?name=GUI2Exe_0.5.0.Zip