Ошибка Py2Exe: Win32com.client вызывает ошибки при попытке запустить созданный исполняемый файл - PullRequest
0 голосов
/ 26 октября 2011

Мой сценарий, который я пытаюсь создать в исполняемый файл, содержит следующий импорт:

import csv, time, BeautifulSoup, sys, mechanize, os, traceback, win32com.client as win32

Мой setup.py выглядит так:

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

sys.argv.append('py2exe')

setup(
    options = {'py2exe': {'bundle_files': 1}},
    console = [{'script': "tool.py"}],
    zipfile = None,
)

.exe моей программы создан успешно, однако, когда я пытаюсь запустить его, я получаю следующие ошибки:

Traceback (most recent call last):
  File "tool.py", line 1, in <module>
  File "zipextimporter.pyc", line 82, in load_module
  File "win32com\__init__.pyc", line 5, in <module>
  File "zipextimporter.pyc", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading win32api.pyd

Удивительно, но если я использую bundle_files: = 3, он прекрасно компилируется в .exe, но мне нужно, чтобы эта программа была в одном исполняемом файле, а не в нескольких файлах. Я прочитал this с сайта py2exe, но я не уверен, что это то, что мне нужно делать / использовать. Если это ответ, который я ищу, я не знаю, как его использовать или что с ним делать. Пожалуйста, объясните.

Любая помощь с благодарностью!

1 Ответ

0 голосов
/ 27 октября 2011

Эта проблема была решена путем обновления до Python 2.7. Первоначально у меня был установлен Python 2.6, но обновление решило эту проблему.

...