#pyqt4 #py2exe
#pyqt4 #py2exe
Вопрос:
Я упаковал программу на python (с использованием PyQt4) с помощью py2exe, exe-файл нормально запускается на моем компьютере, но когда я копирую его на другой компьютер, произошла ошибка, подобная следующей (в файле журнала):
Файл «PyQt4 QtGui.pyc», строка 12, в файле «PyQt4QtGui.pyc», строка 10, в __load ImportError: ошибка загрузки DLL:
подробнее:
- я использую Python 2.5.
- MSVCR71.dll доступна в том же каталоге, что и exe-файл.
мой setup.py скрипт:
# coding: utf-8
from distutils.core import setup
import py2exe
import sys
#this allows to run it with a simple double click.
sys.argv.append('py2exe')
script = [{
"script":"test.py",
'icon_resources':[(0, 'main.ico'),]
}]
py2exe_options = {
"includes":["sip",],
"dll_excludes": ["MSVCP90.dll",]
}
setup(windows=script, options={'py2exe':py2exe_options})
Ответ №1:
Вам необходимо распространить библиотеки pyqt4 DLL вместе с вашим EXE-файлом, чтобы он запускался на компьютерах, где pyqt4 не установлен. Вы должны быть в состоянии найти библиотеки DLL в чем-то вроде C:Python27Libsite-packagesPyQt4bin
Чтобы упаковать библиотеки dll с вашим EXE-файлом, вы можете использовать установщик, такой как nsis или inno.
Комментарии:
1. Даже если я копирую все DLL из «PyQt4 bin» в тот же каталог, что и exe-файл, также возникает эта проблема.
2. какая dll, по его словам, отсутствует? — сообщение об ошибке отключено.
3. После того, как я установил фрейм dotnet, теперь все в порядке.
4. что такое фрейм dotnet? .NET?
5. да, .NET download.microsoft.com/download/2/0/e /…