## 3.10.1 PyWin32 

The PyWin32 module by Mark Hammond is a collection of modules for advanced Windows-specific support. This includes utilities for: 

• Component Object Model (COM) 

• Win32 API calls 

• Registry 

• Event log 

• Microsoft Foundation Classes (MFC) user interfaces 

PythonWin is a sample MFC application shipped with PyWin32. It is an embeddable IDE with a built-in debugger. 

See also: 

Win32 How Do I…? by Tim Golden 

Python and COM by David and Paul Boddie 

## 3.10.2 cx_Freeze 

cx_Freeze is a$_{distutils}$extension (see extending-distutils) which wraps Python scripts into executable Windows programs ($_{*}$ $_{.exe}$files). When you have done this, you can distribute your application without requiring your users to install Python. 

## 3.10.3 WConio 

Since Python’s advanced terminal handling layer,$_{curses}$, is restricted to Unix-like systems, there is a library ex- clusive to Windows as well: Windows Console I/O for Python. 

WConio is a wrapper for Turbo-C’s$_{CONIO.H}$ , used to create text user interfaces. 

## 3.11 Compiling Python on Windows 

If you want to compile CPython yourself, first thing you should do is get the source. You can download either the latest release’s source or just grab a fresh checkout. 

The source tree contains a build solution and project files for Microsoft Visual Studio 2015, which is the compiler used to build the official Python releases. These files are in the$_{PCbuild}$ directory. 

Check$_{PCbuild/readme.txt}$ for general information on the build process. 

For extension modules, consult building-on-windows. 

See also: 

Python + Windows + distutils + SWIG + gcc MinGW or “Creating Python extensions in C/C++ with SWIG and compiling them with MinGW gcc under Windows” or “Installing Python extension with distutils and with- out Microsoft Visual C++” by Sébastien Sauvage, 2003 

