What versions of Python will work in Windows XP?

Question:

I would like the most advanced version of Python that still works on Windows XP. I need both Python 2 and Python 3.

What versions of Python will work on Windows XP?

Asked By: Fake Name

||

Answers:

Any of them, python is very platform independent. Some features might not work, but that would best be found in the documentation.

Answered By: mcchucklezz

I found that Python 2.7.9 and Python 3.4.4 are the newest versions of Python that work in Windows XP. I found this out through trial and error.

Answered By: Fake Name

I’ve found a desperate guy (Daniel Pistelli) who didn’t give up at the windows error dialog:

https://ntcore.com/?p=458

I like how he approaches the topic:

If we try to start any new application on XP, we’ll get an error
message informing us that it is not a valid Win32 application. This
happens because of some fields in the Optional Header of the Portable
Executable.

[…]

Fortunately, it’s enough to adjust the fields in the executable we want to start (python.exe), there’s no need to adjust the DLLs as well. If we try run the application now, we’ll get an error message due to a missing API in kernel32. So let’s turn our attention to the imports.

And then he goes on for another 5-6 screens. To sum it up, apparently you’ll have to:

  • Modify the python.exe header,
  • Run a tiny Python script to remap some DLL calls,
  • Recalculate some binary hashes,
  • Create a fake kernel32.dll with certain calls forwarded,
  • Modify python37.dll to point to this fake thing,

and then you’re all set. To be honest I couldn’t quite follow (let alone verify!) some of the steps but it looks legit and there are links with Daniel’s half-baked solutions for the harder parts, also a lot of Python sources explained. I will definitely give this thing a try.

In fact, here are the final scripts from his GitHub page:
https://github.com/dpistelli/xptmrt

Moral of the story: you can be crazy, but you’ll never be dismantle-all-dlls-and-exes-and-open-hexeditors-and-disassemble-hashing-algorithms-and-mock-it-all-together-so-it-works-under-xp-crazy!

Answered By: dkellner

i tried 3.3.3 but i came up with an error message use 3.4.3/2.7.9 they are the only versions that work now sadly

Answered By: Anonymous

Someone had built Python 3.4.10, which is slightly newer than the officially prescribed Python3 v3.4.3/3.4.4 for Windows XP. Since it comes from the third-party (not the official Python website), use at your own risk,

–>Download<–

Answered By: TAbdiukov

There are several custom builds of Python >3.44 suitable for Windows XP. A poster at reddit has provided Python 3.55 here:
https://www.reddit.com/r/Python/comments/3tgi0t/python_35_x86_on_windows_xp/

Here is an XP compatible build of 3.6.15 source code only:
https://alex-free.github.io/winxp_python3.6.15/

At the MSFN forums someone has provided an XP compatible build of 3.8.1350 here:
https://msfn.org/board/topic/183741-python-3813-for-windows-xp-sp3/

Answered By: Pherospeni

Official website says about 3.4.10: https://www.python.org/downloads/release/python-3410/

Answered By: Paul K.