Почему python серипт упакованный в .exe не запускается на windows7 без sp1?
Имеется скрипт написанный на python. Необходимо запустить его на нескольких машинах под управлением windows7.
На одной из машин без проблем поставил интерпретатор, необходимые библиотеки, все работает как надо. На второй не удается даже python установить, ругается на отсутствие service pack 1.
Попробовал решить проблему упаковкой скрипта в .exe файл, использовал для этого pyinstaller. Итоговый файл на проблемной машине так и не заработал, запускается и повисает, никаких ошибок при этом не выдает. На других машинах (win7, win10) .exe работает как надо.
Можно ли решить проблему без переустановки винды/без установки SP1?
Версия python — 3.5, из дополнительных модулей используется только lxml
1) берем Dependency Walker, смотрим зависимости экзешника;
2) обращаем внимание на зависимости, которые резолвятся из системных директорий. Среди них нужно выбрать те, которые не являются обязательной частью системы (сложно перечислить конкретные, скриншот окна DepWalk не помешает);
3) могу на 90% сказать, что это будет Студийный рантайм (msvcr*.dll/msvcp*.dll).
4) удовлетворяем эти несистемные зависимости. Если райнтам — то желательно его нормально поставить (из redist-пакета), если не вариант — то можно просто положить dll рядом с exe.
Installing Python 3.8 on windows 7 32bit with SP1
I think this is typo from Python Developers the update is kb2533623 not kb2533625 and you can download it from here then restart your machine and try to install python 3.8 or 3.7 it will work like a charm
Update As @ClassicOcean said the update for kb2533623 no longer available you can now install this update to solve the problem KB3063858
Solution 2
To install Python 3.7 or 3.8, in windows 7 operating system, you need to install Windows 7 Service Pack 1 first and then Update for Windows 7 (KB2533623) (if not installed already).
Your system is missing the Update for Windows 7 (KB2533623), hence in your Python installation log file it is showing detected windows 7 sp1 without kb2533625 , although it should have been detected windows 7 sp1 without KB2533623 , I think this is a mistake from Python developers.
Go to: My Computer -> Properties and check the System Type. If it is 64-bit Operating System:
- For Windows 7 Service Pack 1, download the file windows6.1-KB976932-X64.exe from Windows7 Service Pack-1 download page
- For Update for Windows 7 (KB2533623), download it from this link of Microsoft’s official website
- For Windows 7 Service Pack 1, download the file windows6.1-KB976932-X86.exe from Windows7 Service Pack-1 download page
- For Update for Windows 7 (KB2533623), download it from this link of Microsoft’s official website