Skip to content
Branch: master
Find file History
zooba bpo-39401: Avoid unsafe DLL load on Windows 7 and earlier (GH-18231)
As Windows 7 is not supported by Python 3.9, we just replace the dynamic load with a static import. Backports will have a different fix to ensure they continue to behave the same.
Latest commit 6a65eba Jan 29, 2020
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
bdist_wininst bpo-37445: Include FORMAT_MESSAGE_IGNORE_INSERTS in FormatMessageW() … Sep 9, 2019
clinic bpo-37034: Display argument name on errors with keyword arguments wit… Aug 29, 2019
icons bpo-37778: Fixes the icons used for file associations to the Microsof… Aug 7, 2019
layout bpo-39012: Fix RC version suffix for nuget release files (GH-17564) Dec 10, 2019
WinMain.c Use UNICODE wWinMain, to make CRT initialize __wargv. May 9, 2008
_msi.c bpo-12202: Properly check MsiSummaryInfoGetProperty() calls in msilib ( Jun 1, 2019
_testconsole.c bpo-31462: Remove trailing whitespaces. (#3564) Sep 14, 2017
classicAppCompat.can.xml bpo-34977: Add Windows App Store package (GH-11027) Dec 11, 2018
classicAppCompat.cat bpo-34977: Add Windows App Store package (GH-11027) Dec 11, 2018
classicAppCompat.sccd bpo-34977: Add Windows App Store package (GH-11027) Dec 11, 2018
config.c bpo-37798: Add C fastpath for statistics.NormalDist.inv_cdf() (GH-15266) Aug 23, 2019
crtlicense.txt Implement Windows release builds in Azure Pipelines (GH-14065) Jun 14, 2019
dl_nt.c Fixes sys.winver generation and removes dependency on user32.dll Jan 15, 2015
empty.c Add main program for icon file. Sep 3, 2004
errmap.h bpo-37705: Improve the implementation of winerror_to_errno() (GH-15623) Sep 9, 2019
errmap.mak Much-needed merge (using svnmerge.py this time) of trunk changes into… May 27, 2006
frozen_dllmain.c Use GetModuleHandleW to avoid *A functions where possible. Jan 14, 2012
getpathp.c bpo-39401: Avoid unsafe DLL load on Windows 7 and earlier (GH-18231) Jan 29, 2020
invalid_parameter_handler.c Issue #23524: Replace _PyVerify_fd function with calls to _set_thread… Apr 12, 2015
launcher.c bpo-39156: Break up COMPARE_OP into four logically distinct opcodes. (G… Jan 14, 2020
msvcrtmodule.c bpo-31462: Remove trailing whitespaces. (#3564) Sep 14, 2017
pyconfig.h bpo-27961: Replace PY_LONG_LONG with long long. (GH-15386) Oct 21, 2019
pylauncher.rc bpo-34977: Add Windows App Store package (GH-11027) Dec 11, 2018
pyshellext.cpp bpo-34770: Fix a possible null pointer dereference in pyshellext.cpp (G… Sep 25, 2018
pyshellext.def Issue #27469: Adds a shell extension to the launcher so that drag and… Jul 16, 2016
pyshellext.idl Issue #27469: Adds a shell extension to the launcher so that drag and… Jul 16, 2016
pyshellext.rc Issue #27469: Adds a shell extension to the launcher so that drag and… Jul 16, 2016
pyshellext_d.def Issue #27469: Adds a shell extension to the launcher so that drag and… Jul 16, 2016
python.manifest bpo-30731: python.manifest fix (#2328) Jul 13, 2017
python3.def bpo-38896: Remove PyUnicode_ClearFreeList() function (GH-17354) Nov 23, 2019
python3dll.c Add updated .hgeol file and fix newlines in the 3.2 branch. Mar 5, 2011
python_exe.rc Issue #27756: Adds new icons for Python files and processes on Window… Sep 5, 2016
python_nt.rc Issue 23018: Add version info to python[w].exe Jan 15, 2015
python_uwp.cpp bpo-38304: PyConfig_InitPythonConfig() cannot fail anymore (GH-16509) Oct 1, 2019
python_ver_rc.h Closes #26624: Adds validation of ucrtbase[d].dll version with warnin… Apr 13, 2016
pythonw_exe.rc Issue #27756: Adds new icons for Python files and processes on Window… Sep 5, 2016
readme.txt Issue #25022: Merge with 3.4 Sep 10, 2015
sqlite3.rc Adds version info to all signed binaries on Windows. Apr 6, 2016
store_info.txt Update information about publishing a new version to the Microsoft St… Nov 20, 2019
testpy.py Cleanup regrtest "main()" function Mar 24, 2016
validate_ucrtbase.py Issue #27705: Update message in validate_ucrtbase.py Sep 10, 2016
winreg.c bpo-39007: Add auditing events to functions in winreg (GH-17541) Dec 9, 2019
winsound.c Fix miscellaneous typos (#4275) Nov 5, 2017

readme.txt

Welcome to the "PC" subdirectory of the Python distribution
***********************************************************

This "PC" subdirectory contains complete project files to make
several older PC ports of Python, as well as all the PC-specific
Python source files.  It should be located in the root of the
Python distribution, and there should be directories "Modules",
"Objects", "Python", etc. in the parent directory of this "PC"
subdirectory.  Be sure to read the documentation in the Python
distribution.

Python requires library files such as string.py to be available in
one or more library directories.  The search path of libraries is
set up when Python starts.  To see the current Python library search
path, start Python and enter "import sys" and "print sys.path".

All PC ports use this scheme to try to set up a module search path:

  1) The script location; the current directory without script.
  2) The PYTHONPATH variable, if set.
  3) For Win32 platforms (NT/95), paths specified in the Registry.
  4) Default directories lib, lib/win, lib/test, lib/tkinter;
     these are searched relative to the environment variable
     PYTHONHOME, if set, or relative to the executable and its
     ancestors, if a landmark file (Lib/string.py) is found ,
     or the current directory (not useful).
  5) The directory containing the executable.

The best installation strategy is to put the Python executable (and
DLL, for Win32 platforms) in some convenient directory such as
C:/python, and copy all library files and subdirectories (using XCOPY)
to C:/python/lib.  Then you don't need to set PYTHONPATH.  Otherwise,
set the environment variable PYTHONPATH to your Python search path.
For example,
   set PYTHONPATH=.;d:\python\lib;d:\python\lib\win;d:\python\lib\dos-8x3

There are several add-in modules to build Python programs which use
the native Windows operating environment.  The ports here just make
"QuickWin" and DOS Python versions which support a character-mode
(console) environment.  Look in www.python.org for Tkinter, PythonWin,
WPY and wxPython.

To make a Python port, start the Integrated Development Environment
(IDE) of your compiler, and read in the native "project file"
(or makefile) provided.  This will enable you to change any source
files or build settings so you can make custom builds.

pyconfig.h    An important configuration file specific to PC's.

config.c    The list of C modules to include in the Python PC
            version.  Manually edit this file to add or
            remove Python modules.

testpy.py   A Python test program.  Run this to test your
            Python port.  It should produce copious output,
	    ending in a report on how many tests were OK, how many
	    failed, and how many were skipped.  Don't worry about
	    skipped tests (these test unavailable optional features).


Additional files and subdirectories for 32-bit Windows
======================================================

python_nt.rc   Resource compiler input for python15.dll.

dl_nt.c
               Additional sources used for 32-bit Windows features.

getpathp.c     Default sys.path calculations (for all PC platforms).

dllbase_nt.txt A (manually maintained) list of base addresses for
               various DLLs, to avoid run-time relocation.


Note for Windows 3.x and DOS users
==================================

Neither Windows 3.x nor DOS is supported any more.  The last Python
version that supported these was Python 1.5.2; the support files were
present in Python 2.0 but weren't updated, and it is not our intention
to support these platforms for Python 2.x.
You can’t perform that action at this time.