Ответ 1
Добавьте каталог PyQt4, содержащий приложения Qt и библиотеки DLL, в переменную среды PATH
. В PowerShell, если вы не изменили ни один из путей установки, это было бы
$env:path += ';C:\Python26\Lib\site-packages\PyQt4\bin'
У меня есть работающий Python 2.6 install и только что установлен PyQt4, созданный для Python 2.6 (доступен в http://www.riverbankcomputing.co.uk/software/pyqt/download). Когда я пытаюсь импортировать PyQt4.QtGui, я получаю следующую ошибку:
ImportError: DLL load failed: The specified procedure could not be found.
Я на 64-разрядной версии Windows 2k8, но моя установка Python - 32-разрядная.
Добавьте каталог PyQt4, содержащий приложения Qt и библиотеки DLL, в переменную среды PATH
. В PowerShell, если вы не изменили ни один из путей установки, это было бы
$env:path += ';C:\Python26\Lib\site-packages\PyQt4\bin'
Я нашел решение на другом форуме, который работал у меня. Мне нужно было скопировать QtGui4.dll и QtCore4.dll в каталог... \Python2.7.1\Lib\site-packages\PyQt4. Заметьте, я оставил оригинал в каталоге bin.
Я установил PyQt4 из файла .whl
(из неофициальных оконных двоичных файлов) и получил ту же ошибку.
Я сделал то, что предложили ответы: проверил, что я установил правильную версию, поместил мой каталог PyQt4 в переменную среды PATH
и имел QtCore4.dll
и QtGui4.dll
, однако ни одна из них не работала.
Ответ заключался в том, чтобы попробовать и открыть программу designer.exe
: она также имела ошибку, но на этот раз указала, какой DLL файл отсутствует (он сказал msvcp140.dll is missing from your computer
)
Затем я загрузил его dll-files.com и поместил его в папку PyQt4 (C:\Python35\Lib\site-packages\PyQt4
), и он сработал.
Надеюсь, это поможет!
Вы уверены, что установили Python x64? По умолчанию веб-сайт Python позволяет загрузить версию x32, вам нужно перейти на эту страницу, чтобы загрузить версию x64, а затем она будет работать. У меня была такая же проблема, и это было исправлено. https://www.python.org/downloads/windows/
Надеюсь, что это поможет кому-то. Ура, Крис
Если это не работает, попробуйте найти QtCore4.dll, QtGui4.dll и т.д. в ваших путях, установленных в переменной среды PATH. В моем случае я нашел несколько dt-dll в c:\windows\system32, вызвал такое же сообщение об ошибке. Я удалил файлы dll, и проблема решена. 'C:\Python26\Lib\site-packages\PyQt4\bin' был на моем пути, но этого было недостаточно.
Ни один из этих решений не работал у меня. У меня был Python 3.1 x64 с PyQt 4.8.2-1 x64 на моем Windows 7 x64, но удаление их и установка x86 версий Python 3.1 и PyQt решили проблему для меня.
Я использую Linux ubuntu 14.04, во-первых, не могу импортировать PyQt4.QtGui, потому что модуль доступа PyQt4 не доступен в групповом разрешении.
если интерпретатор вызовов: shell>> python
недоступный модуль QtGui, но если я вызываю интерпретатор sudo python
доступный QtGui.So, я решил эту ошибку, Change permisions folder package PyQt4 in my virtualenv,from property folder,change Owner and Group
.
Его работы для меня:)
Ни один из этих решений не работал у меня с 64-битным Python 3.5. Я закончил откатывание Anaconda до 4.1.1 (4.2.0 использует Qt5 по умолчанию, что может быть или не быть проблемой). Мне также пришлось установить pyqt из python 3.5 whl - http://www.lfd.uci.edu/%7Egohlke/pythonlibs/#pyqt4.
Двоичный файл на веб-сайте Riverbank не работал у меня, возможно, он работает только на Python 3.4?
Я установил pyqt с Anaconda несколько раз, и я считаю, что если это сделано правильно, PATH не нуждается в модификации (это происходит как часть установки), и библиотеки DLL не нужно копировать.
Вы проверяли, что PyQt4 для 32 или 64 бит?, у меня была та же проблема, что я использовал python 2.7.13 32 бит в Windows 10 и PyQt4 4.11 64 бит, а также изменил PyQt4 на 32 бит, и он сразу работает.
Загрузите программу из http://www.dependencywalker.com, чтобы увидеть, есть ли отсутствующая dll.
Вам нужно указать программу на файл QtGui.pyd из PyQt.
В моем случае использовался MSYS2 mingw-w64-x86_64-python3-pyqt4, ему понадобилось libpython3.5m.dll, в то время как pacman уже находился на python3.6