Skip to main content

pywin32

CI PyPI - Version PyPI - Python Version PyPI - Downloads License - PSF-2.0


This is the readme for the Python for Win32 (pywin32) extensions, which provides access to many of the Windows APIs from Python.

See CHANGES.txt for recent notable changes.

Only Python 3 is supported. If you want Python 2 support, you want build 228.

Docs

The docs are a long and sad story, but there's now an online version of the helpfile that ships with the installers (thanks @ofek!). Lots of that is very old, but some is auto-generated and current. Would love help untangling the docs!

Support

Feel free to open issues for all bugs (or suspected bugs) in pywin32. pull-requests for all bugs or features are also welcome.

However, please do not open github issues for general support requests, or for problems or questions using the modules in this package - they will be closed. For such issues, please email the python-win32 mailing list - note that you must be subscribed to the list before posting.

Binaries

By far the easiest way to use pywin32 is to grab binaries from the most recent release

Note that there are no 32-bit binary installers for 3.10 and later - see this github issue

Installing via PIP

You can install pywin32 via pip:

pip install pywin32

If you encounter any problems when upgrading (eg, "module not found" errors or similar), you should execute:

python Scripts/pywin32_postinstall.py -install

This will make some small attempts to cleanup older conflicting installs.

Note that if you want to use pywin32 for "system wide" features, such as registering COM objects or implementing Windows Services, then you must run that command from an elevated (ie, "Run as Administrator) command prompt.

The specified procedure could not be found / Entry-point not found Errors?

A very common report is that people install pywin32, but many imports fail with errors similar to the above.

In almost all cases, this tends to mean there are other pywin32 DLLs installed in your system, but in a different location than the new ones. This sometimes happens in environments that come with pywin32 pre-shipped (eg, anaconda?).

The possible solutions are:

  • Run the "post_install" script documented above.

  • Otherwise, find and remove all other copies of pywintypesXX.dll and pythoncomXX.dll (where XX is the Python version - eg, "39")

Running as a Windows Service

Modern Python installers do not, by default, install Python in a way that is suitable for running as a service, particularly for other users.

  • Ensure Python is installed in a location where the user running the service has access to the installation and is able to load pywintypesXX.dll and pythonXX.dll.

  • Manually copy pythonservice.exe from the site-packages/win32 directory to the same place as these DLLs.

Building from source

Building from source has been simplified recently - you just need Visual Studio and the Windows 10 SDK installed (the free compilers probably work too, but haven't been tested - let me know your experiences!)

setup.py is a standard distutils build script. You probably want:

python setup.py install

or

python setup.py --help

You can run setup.py without any arguments to see specific information about dependencies. A vanilla MSVC installation should be able to build most extensions and list any extensions that could not be built due to missing libraries - if the build actually fails with your configuration, please open an issue.

Release process

The following steps are performed when making a new release - this is mainly to form a checklist so mhammond doesn't forget what to do :)

  • Ensure CHANGES.txt has everything worth noting, commit it.

  • Update setup.py with the new build number.

  • Execute build.bat, wait forever, test the artifacts.

  • Upload .whl artifacts to pypi - we do this before pushing the tag because they might be rejected for an invalid README.md. Done via py -3.5 -m twine upload dist/*XXX*.whl.

  • Commit setup.py (so the new build number is in the repo), create a new git tag

  • Upload the .exe installers to github.

  • Update setup.py with the new build number + ".1" (eg, 123.1), to ensure future test builds aren't mistaken for the real release.

  • Make sure everything is pushed to github, including the tag (ie, git push --tags)

  • Send mail to python-win32

Metadata

Release files for pywin32 304

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for pywin32 304
File
pywin32-304-cp311-cp311-win_arm64.whl CPython 3.11 CPython 3.11 Windows ARM64 Details
pywin32-304-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pywin32-304-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
pywin32-304-cp310-cp310-win_arm64.whl CPython 3.10 CPython 3.10 Windows ARM64 Details
pywin32-304-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pywin32-304-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
pywin32-304-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pywin32-304-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
pywin32-304-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
pywin32-304-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
pywin32-304-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
pywin32-304-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
pywin32-304-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
pywin32-304-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details

Total release size: 161.9 MB

Release files / pywin32-304-cp311-cp311-win_arm64.whl

Download URL pywin32-304-cp311-cp311-win_arm64.whl
Size 11.2 MB
Tags CPython 3.11 Windows ARM64
SHA-256 checksum
How to use checksums
cbbe34dad39bdbaa2889a424d28752f1b4971939b14b1bb48cbf0182a3bcfc43
BLAKE2b-256 checksum
How to use checksums
39c0cd6cb7bd1619f647b1614cf622190e4ff089c21032c219da9a7ae3c1de6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp311-cp311-win_amd64.whl

Download URL pywin32-304-cp311-cp311-win_amd64.whl
Size 12.1 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
7ffa0c0fa4ae4077e8b8aa73800540ef8c24530057768c3ac57c609f99a14fd4
BLAKE2b-256 checksum
How to use checksums
6b9e44c8b74afb6657e1ca48b4855fcdebad29ae4ead654d88238bea319ec993
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp311-cp311-win32.whl

Download URL pywin32-304-cp311-cp311-win32.whl
Size 11.0 MB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
30c53d6ce44c12a316a06c153ea74152d3b1342610f1b99d40ba2795e5af0269
BLAKE2b-256 checksum
How to use checksums
dd1a3fabb07100936c52ec063e4de01ecfbdef7120704f15277b3565cc2f461f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp310-cp310-win_arm64.whl

Download URL pywin32-304-cp310-cp310-win_arm64.whl
Size 11.2 MB
Tags CPython 3.10 Windows ARM64
SHA-256 checksum
How to use checksums
d3ee45adff48e0551d1aa60d2ec066fec006083b791f5c3527c40cd8aefac71f
BLAKE2b-256 checksum
How to use checksums
7591fa2a9d3861184df4c2dc57c9a29e6e856f6bbe3702acccf169329f9b6eae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp310-cp310-win_amd64.whl

Download URL pywin32-304-cp310-cp310-win_amd64.whl
Size 12.1 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4f32145913a2447736dad62495199a8e280a77a0ca662daa2332acf849f0be48
BLAKE2b-256 checksum
How to use checksums
14079a2bd2cdcdeecd013ed83173209f1c984662ef05922ef6fe5f0fb9cc120e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp310-cp310-win32.whl

Download URL pywin32-304-cp310-cp310-win32.whl
Size 11.0 MB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
3c7bacf5e24298c86314f03fa20e16558a4e4138fc34615d7de4070c23e65af3
BLAKE2b-256 checksum
How to use checksums
056b9f8421a9a2ab5f33cbb9fd2f282ac971e584f6a83d44f6672bd17f1d68b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp39-cp39-win_amd64.whl

Download URL pywin32-304-cp39-cp39-win_amd64.whl
Size 12.2 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
d24a3382f013b21aa24a5cfbfad5a2cd9926610c0affde3e8ab5b3d7dbcf4ac9
BLAKE2b-256 checksum
How to use checksums
bcca9311427c719f6902c30ac4a6b252a38632fa3fd0e7b360a526a0a3b1dae7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp39-cp39-win32.whl

Download URL pywin32-304-cp39-cp39-win32.whl
Size 11.0 MB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
25746d841201fd9f96b648a248f731c1dec851c9a08b8e33da8b56148e4c65cc
BLAKE2b-256 checksum
How to use checksums
38489a480ef4bba85a6318d1d7572346d315fbed5472f297d3f3d56ed0a428ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp38-cp38-win_amd64.whl

Download URL pywin32-304-cp38-cp38-win_amd64.whl
Size 12.3 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
ead865a2e179b30fb717831f73cf4373401fc62fbc3455a0889a7ddac848f83e
BLAKE2b-256 checksum
How to use checksums
4d33251aacef6d983476e4176e3c9b542f60c34735c034392e73762e699e9a5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp38-cp38-win32.whl

Download URL pywin32-304-cp38-cp38-win32.whl
Size 11.1 MB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
94037b5259701988954931333aafd39cf897e990852115656b014ce72e052e96
BLAKE2b-256 checksum
How to use checksums
cd6e430881ffd1902a4c7a0eaed73a2a9469625a8f25eb223efa443d1158321d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp37-cp37m-win_amd64.whl

Download URL pywin32-304-cp37-cp37m-win_amd64.whl
Size 12.2 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
bb2ea2aa81e96eee6a6b79d87e1d1648d3f8b87f9a64499e0b92b30d141e76df
BLAKE2b-256 checksum
How to use checksums
a4d9e80172360b380ea41f423f3ddf2d0d986dd88c7b69c102494f52fd84012f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp37-cp37m-win32.whl

Download URL pywin32-304-cp37-cp37m-win32.whl
Size 11.1 MB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
f64c0377cf01b61bd5e76c25e1480ca8ab3b73f0c4add50538d332afdf8f69c5
BLAKE2b-256 checksum
How to use checksums
ee8835150e6f5abce37693525c05176f55efed4996c997e88e4a31746e53d638
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp36-cp36m-win_amd64.whl

Download URL pywin32-304-cp36-cp36m-win_amd64.whl
Size 12.2 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
de9827c23321dcf43d2f288f09f3b6d772fee11e809015bdae9e69fe13213988
BLAKE2b-256 checksum
How to use checksums
709444ec60e63d77fb3bb9ff91e6906baf3e750445dc8b6b8374d1c6d79c9412
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release files / pywin32-304-cp36-cp36m-win32.whl

Download URL pywin32-304-cp36-cp36m-win32.whl
Size 11.1 MB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
be253e7b14bc601718f014d2832e4c18a5b023cbe72db826da63df76b77507a1
BLAKE2b-256 checksum
How to use checksums
c18bdde940428f9b891e1d9d7b0c2199c7a332d57429ae49e10e1619d67044db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.3+

Release history Release notifications | RSS feed

312

21 release files

311

20 release files

310

16 release files

309

16 release files

308

18 release files

307

18 release files

306

14 release files

305

14 release files

This release

304 This release

14 release files

303

12 release files

302

10 release files

301

10 release files

300

10 release files

228

12 release files

227

12 release files

226

12 release files

225

12 release files

224

8 release files

223

8 release files

222

7 release files

214

210

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page