Задать вопрос
@N0rd
Frontend developer

Почему python серипт упакованный в .exe не запускается на windows7 без sp1?

Имеется скрипт написанный на python. Необходимо запустить его на нескольких машинах под управлением windows7.
На одной из машин без проблем поставил интерпретатор, необходимые библиотеки, все работает как надо. На второй не удается даже python установить, ругается на отсутствие service pack 1.
Попробовал решить проблему упаковкой скрипта в .exe файл, использовал для этого pyinstaller. Итоговый файл на проблемной машине так и не заработал, запускается и повисает, никаких ошибок при этом не выдает. На других машинах (win7, win10) .exe работает как надо.
Можно ли решить проблему без переустановки винды/без установки SP1?
Версия python - 3.5, из дополнительных модулей используется только lxml
  • Вопрос задан
  • 1184 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
1) берем Dependency Walker, смотрим зависимости экзешника;
2) обращаем внимание на зависимости, которые резолвятся из системных директорий. Среди них нужно выбрать те, которые не являются обязательной частью системы (сложно перечислить конкретные, скриншот окна DepWalk не помешает);
3) могу на 90% сказать, что это будет Студийный рантайм (msvcr*.dll/msvcp*.dll).
4) удовлетворяем эти несистемные зависимости. Если райнтам - то желательно его нормально поставить (из redist-пакета), если не вариант - то можно просто положить dll рядом с exe.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
saboteur_kiev
@saboteur_kiev Куратор тега Python
software engineer
Видимо питону нужны библиотеки, которые появились только в SP1, и упаковка в EXE не убирает эту зависимость.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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