Skip to main content

A (partial) reimplementation of pywin32 using ctypes/cffi

Project description

Documentation Status

A reimplementation of pywin32 that is pure python. The default behaviour will try to use cffi (>= 1.3.0), if available, and fall back to using ctypes. Please note that there is no need to have a compiler available on installation or at runtime.

Usage

Example:

# Equivalent to 'import win32api' from pywin32.
from win32ctypes.pywin32 import win32api

win32api.LoadLibraryEx(sys.executable, 0, win32api.LOAD_LIBRARY_AS_DATAFILE)

Development setup

The following should be good enough:

pip install -r test_requirements.txt
python install -e .

Change Log

Version 0.2.3

  • Do not use loal_module in backend selection code (#131, #132)

  • Add pywin32.pywintypes.Time (#122)

Version 0.2.2

  • Use ctypes.set_last_error to avoid race conditions (#122)

Version 0.2.1

  • Use faulthandler when testing and fix discovered errors (#115, #117).

  • Fix support for None username in credentials to be consistent in all backends (#99).

  • Test also on cp38, cp39, cp310, cp311 and use cp38 for linking (#114, #107, #100).

  • Add support for CredEnumerate extending code from @markb-EE (#110, #109, #111)

  • Remove support for older python versions < cp36 (#104, #120).

Version 0.2.0

  • Fix syntax error when installing in python 3.7 (#81).

  • Support testing on python 3.7 (#82).

  • Support testing on python 3.3 and python 3.4 (#77).

  • Do not use 2to3 (#75).

  • Support lazy wrapping of win32 functions (#67).

  • Add CRED_PERSIST constants (#79 contributed by @tivnet).

Version 0.1.2

(bugfix release)

  • Fix implementation for the deprecated api (#64).

Version 0.1.1

(bugfix release)

  • Update Manifest.in entries (#63)

  • fix VERSION path in Manifest.in (#62 contributed by @MinchinWeb)

Version 0.1.0

  • Update tests and provide better compatibility with pywin32 for Resource functions

  • Fix: Python 3.5 and 3.6 support (#52).

  • API additions to allow pywin32-ctypes to work with pyinstaller (#46 and #57 contributed by @virtuald).

  • Fix: do not update the global copy of the windows dlls (#42)

  • Add documentation and setup automatic builds in ReadTheDocs (#3, #36).

  • Add cffi backend to be used when available (#31).

  • Fix: EnumResourceTypes and EnumResourceNames would only return ints (#21, #30).

  • Restructure package layout to split core wrapping modules from pywin32 emulation (#15, #17).

Version 0.0.1

7/04/2014

  • Python 2.6 support (#13)

  • Python 3 support (#12)

  • Basic maintenance work (#11, #7)

  • Fix error raising to be pywin32 compatible (#8)

  • Package rename mini_pywin32 -> pywin32-ctypes

  • Add travis-ci integration using wine! (#2)

  • Support basic library and resource loading (#1)

  • mini_pywin32 is born

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pywin32-ctypes-0.2.3.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

pywin32_ctypes-0.2.3-py3-none-any.whl (30.8 kB view details)

Uploaded Python 3

File details

Details for the file pywin32-ctypes-0.2.3.tar.gz.

File metadata

  • Download URL: pywin32-ctypes-0.2.3.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for pywin32-ctypes-0.2.3.tar.gz
Algorithm Hash digest
SHA256 d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755
MD5 72ff6fc4dd47dde10c9f8fc5ed61457c
BLAKE2b-256 859f01a1a99704853cb63f253eea009390c88e7131c67e66a0a02099a8c917cb

See more details on using hashes here.

File details

Details for the file pywin32_ctypes-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for pywin32_ctypes-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8
MD5 f74cca211e6c4a5e9b4d9b98b7c4b75a
BLAKE2b-256 de3d8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page