2

Pythonで中レベルのアプリケーションを作成しています。これですべてがうまく機能し、py2exeを使用してこれをWindowsで実行可能にしようとしています。実行可能ファイルは正常に作成されますが、実行しようとすると、次のエラーで失敗します。

  File "zipextimporter.pyo", line 82, in load_module
  File "ffhandler.pyo", line 33, in ?
  File "zipextimporter.pyo", line 82, in load_module
  File "pyAA\__init__.pyo", line 1, in ?
  File "zipextimporter.pyo", line 82, in load_module
  File "pyAA\AA.pyo", line 8, in ?
  File "zipextimporter.pyo", line 82, in load_module
  File "pyAA\pyAAc.pyo", line 5, in ?
  File "zipextimporter.pyo", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading pyAA\_pyAAc.pyd

このアプリケーションではpyAAを使用しています。インターネットを検索しましたが、解決策が見つかりませんでした。msvcp71.dllをwindows/system32にコピーしましたが、まだ問題があります。

以前(約7か月前)に解決しましたが、ハードドライブがクラッシュし、再作成しようとすると、今は解決できないようです。:-(

誰かがここで私を助けてくれるなら、私は大いに義務づけられるでしょう。

編集:バンドルファイルオプションなしでpy2exeを使用すると、完全に機能します。しかし、バンドルファイルオプションを使用すると、失敗します。

実行可能ファイルと一緒にlibrary.zipを作成するzipfileオプションなしで試してみました。再び失敗しました。7-zipを使用してlibrary.zipを解凍しましたが、zipファイル内のpyAAフォルダーに_pyAAc.pydがあることがわかりました。したがって、memoryloadlibrary関数に問題があるように見えます。

Windowsの解凍機能を使って解凍しようとすると失敗しました。解凍するには7-zipを使用する必要がありました。それは可能な手がかりですか?

4

1 に答える 1

0

ビルドにいくつかのDLLがありません...

まず、ハードドライブでファイルを検索します_pyAAC.pyd。ビルドに含まれている(出荷されている)ことを確認してください。

次に、.pydファイル(py2exeコンパイル済みバージョンで!)で「dependencywalker」MemoryLoadLibraryを使用して、まだ欠落しているもの( .pydファイルのメッセージを引き起こしている他のDLL)を確認します。これらの依存関係も出荷されていることを確認してください...

于 2009-11-29T19:24:13.130 に答える