flapflapjack
@flapflapjack
на треть я прав

Как найти причину ошибки в Python 2.7?

Здравствуйте. Пишу программу-бота, которая выполняет определенные действия, в зависимости от происходящего на экране.

У себя на ПК я установил Python 2.7, библиотеку opencv и другие библиотеки.

Для тестирования скриптов я создал виртуальную машину, чтобы все крутилось и тестировалось там, пока я в то время мог бы продолжать заниматься своими делами.

Но вот беда - установив на VirtualBox тот же образ Windows 7 (x64), те же пакеты, что я ставил себе (тот же питон, opencv, numpy - все с той же установочной папки) при запуске скрипта стала появляться ошибка:

File "C:\L2\bot-master\functions.py", line 7, in <module>
import cv2
ImportError: DLL load failed: DLL load failed: не найден указанный модуль


Сама cv2.pyd лежит в папке с библиотеками. Да чего уж тут говорить - в PATH я уже добавил все что можно:

C:\Python27\Scripts;
C:\Python27;
C:\Python27\DLLs;
C:\Python27\opencv\build\bin


- ошибка остается.

Я пробовал найти, куда ломится питон с помощью Dependcy Walker'a но он ругается, что скрипт питона - это не приложение.

Как понять, что не так то тут? ОС одинаковые, битность одинаковая, пакеты установлены одинаковые. Выдаваемая ошибка ни о чем не говорит мне - где питон ищет библиотеку и что ему не нравится.
  • Вопрос задан
  • 157 просмотров
Решения вопроса 1
flapflapjack
@flapflapjack Автор вопроса
на треть я прав
Проблема решилась следующим способом:

Через Dependcy Walker открыл сам файл библиотеки cv2.pyd и он указал на нехватающий
api-ms-win-downlevel-shlwapi-l1-1-0.dll

его я скачал с интернета и кинул в папку питона. Все работает.

Блин, 2018 года на дворе. Автоматизацию недостающих пакетов не могут сделать?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы