1

編集: Windows 7マシンは64ビットで、WindowsXPは32ビットです

PyGTK、xlrd、xlwt、xlutilsを使用してWindowsアプリケーションを作成しました。Py2Exeを使用してPythonスクリプトを.exeに変換しましたが、.exeは実行され、Windows7ラップトップで正しく動作します。

私の問題:アプリケーション(およびそのdll)をWindowsXPを実行しているコンピューターに移植すると、.exeが開きません。.exeが機能しない原因は何でしょうか?

MyApp.exe.logエラー出力:

C:\ Users \ WindowsXPUser \ MyApp.exe:11:GtkWarning: `C:\ Users \ Windows7User \ Email Contact Manipulation \ dist \ lib \ gtk-2.0 \ 2.10.0 \ engines \ libwimp.dll':%1は有効なWin32アプリケーション。トレースバック(最後の最後の呼び出し):
ファイル "MyApp.py"、5行目、
ファイル "gtk__init __。pyc"、40行目、
ファイル "gtk_gtk.pyc"、12行目、
ファイル "gtk_gtk.pyc"、10行目、__ load ImportError:DLLのロードに失敗しました:指定されたプロシージャが見つかりませんでした。

関連情報:

  • Python 2.7、GTKバージョン2.0を使用しています
  • .exeはPy2Exeを使用して生成され、Windows7ラップトップでこれを実行します
  • 'dist'フォルダ全体をWindowXPマシンにコピーしたので、すべてのdllとその他のファイルは.exeに含まれています。

Windows 7マシンで正常に動作しているときに、.exeがWindows XPマシンで実行されない原因は何だと思いますか?

私のsetup.pyコード:

# setup.py
from distutils.core import setup
import py2exe, sys, os

sys.argv.append('py2exe')

setup(
    name = 'Bounceback Handler',
    description = '',
    version = '1.0',

    windows = [
                  {
                      'script': 'MyApp.py'
                  }
              ],

    options = {
                  'py2exe': {
                      'packages':'encodings',
                      'includes': 'cairo, pango, pangocairo, atk, gobject, gio',
                  }
              },

    data_files=None
)
4

1 に答える 1

0

Windows 7マシンにインストールされている64ビットバージョンのPythonを使用している場合は、64ビットの実行可能ファイルが作成されます。これは、32ビットXPシステムでは実行されません。32ビットバージョンのPythonをインストールしてから、32ビットバージョンのpy2exeを使用して実行可能ファイルを作成する必要があります。

そうしないと、Py2exeでこのような奇妙な問題が発生する可能性があります。PyInstallerを使用することをお勧めします

于 2012-06-05T02:20:36.360 に答える