Не удается запустить приложение.exe, созданное pyinstaller, с PyQt5 в Windows 10?

На Win10 64bit я установил PyQt5_5.4.1 для Python3.4.3. Мне нужна 3.4.3 для поддержки клиентов XP, и это последняя версия, которая может быть установлена ​​на XP. PyQt5 установился в папку python3.4.3 C:\Python34 и я вижу это в PATH C:\Python34\Lib\site-packages\PyQt5

Когда я запускаю свой скрипт с python myscript.py все хорошо, окно графического интерфейса показывает. Тем не менее, когда я пытаюсь запустить файл.exe из этого сценария, созданного с pyinstaller как это pyinstaller myscript.py --onefile Я получаю ошибку:

Qt: Untested Windows version 10.0 detected!
This application failed to start because it 
could not find or load the Qt platform plugin "windows".

Reinstalling the application may fix this problem.

Этот код у меня есть в myscript.py:

from PyQt5 import QtWidgets, QtCore, QtGui

Есть ли решение этой проблемы? Я попытался переустановить PyQt5, но не повезло.

0 ответов

Сделайте файл хука в вашем каталоге проекта. Назовите это hook-PyQt5.py, например:

from PyInstaller.utils.hooks import qt_plugins_binaries
# Fixed the issue: could not find or load the Qt platform plugin "windows".
binaries = qt_plugins_binaries('platforms', 'PyQt5')

В файле спецификации Pyinstaller добавьте параметр

hookspath=['./']

Анализ объекта:

a = Analysis(
    ...
    hookspath=['./'],
    ...
)

или укажите аргумент "--additional-hooks-dir" для командной строки, если вы используете PyInstaller напрямую.

python -m PyInstaller --additional-hooks-dir="./" <your-script>
Другие вопросы по тегам