Win - is a project to Python-only (or 99%-only) way describe the Win32 API calling sets and associated with it Abstractions (see WinAbs layer).
Win supports very large technologies list - Win32 API, .NET Framework / CLR Interop, Java / JVM Interop, COM API, Python RPC, Runtime C++ and C Libraries, CPython ABI, WinRT, GUI and System Abstractions.
For a more precise understanding, I suggest consulting the library's source code and reviewing the terms and files below.
Win supports very large and flexible list of Windows API versions, from NT 5.0 (hypothetically, Windows 2000) and NT 5.2 (tested, Windows Server 2003) to NT 10.0 (tested, Windows 10-11), from ReactOS (tested) to Wine (hypothetically).
Win runs on all СPython versions from 3.8 to 3.14 inclusive.
- IML - Instructions Markup Language, custom DSL standard for this library.
Uses space-delimiter-based tokenization and instruction-centric model.
See
iml/imldef.pyfor IML parser implementation. - ICL - Interface Contract Language, custom DSL for the definition of the COM interfaces and speedup the COM/Python declaring.
See
com/icl/wicl/parser.pyfor parser implementation. - WICL - (Windows) Interface Contract Language, Generator/Parser implementation for the ICL standard.
See
com/icl/wicl/parser.pyfor its implementation. - Intermediate Methods Process - the architecture of intermediate layer of Python delegator function and C++ declaration, Python must be call delegate method.
See
defbase.pyfor reference (foreign_optimized,foreign,delegate,CStructure.delegate,CStructure.virt_delegate). - CIMPL - C Implementation Language, custom DSL for the definition of the JIT-compilable code, which lays between assembly and high-level definitions. Now is in development and not stable-to-work.
See
cimpl/cimpldef.pyandcimpl/cimpljit.py(under construction) for reference. - WET - Windows Event Tracing, custom tracing and logging system.
See
wet/trace.pyfor reference. - WD - Win Debugger, custom debugger for debugging Python code with native calls, supports calling INT3 for entering native debugger (e.g. WinDbg).
- COM TL - COM Template Library, the answer to Microsoft ATL, core module for COM utilities, COM object definitions and COM Servers API
- NTL - .NET Template Library, library for hosting CLR, .NET Framework interop startup, utilities for interop.
- JTL - Java Template Library, library for interacting JNI and interop startup.
- WRPC - Win Remote Procedure Call, custom protocol for distributed objects system and remote procedure calling.
- WinAbs - Win Abstractions Layer, abstractions over Win32 primitives for securely interacting with WinAPI and fastely developing on WinAPI on Python, destroying the Win32 API boilerplate code.
defbase.py: core infrastructure and types definitions. first-to-see file.cpreproc.py: core definition of the runtime preprocessor simulation.com/comdefbase.py: core definition of the COM APIs.com/interfacedef.py: core definition of the COM interface bases.defbase_process.py: definitions for the CProcess class and inter-process communication.defbase_thread.py: definitions for the CThread class and thread manipulations.defbase_module.py: definitions for the CModule class and module manipulations.defbase_allocator.py: core definitions of library Allocator APIs and IAllocator interface.defbase_assembly.py: definition for the CAssembly class and machine code parsing.cimpl/cimpldef.py: definitions for the core CIMPL infrastructure.iml/imldef.py: definitions for the IML parser and its context.com/icl/wicl/parser.py: definitions for the WICL - ICL Parser and its context.defbase_errordef.py: definitions for the Windows error exceptions and exception text formatting.com/guid.py: definitions for the GUID, IID and CLSID.com/comtl: COM Templates Library, the ATL analogue in library.com/bstr.py: definition of the BSTR class.com/unknwn.py: definition of the IUnknown, IClassFactory and COMClass classes and other core COM infrastructure logic.abs/core/handle.py: core definitions for RAII-like handles for WinAbsabs/core/event.py: core definition of WinAbs C#-like Eventabs/window.py: core window logic of WinAbs frameworkwrpc/message.py: specification of WRPC protocolwrpc/marshal.py: core marshal logic of WRPCwrpc/protocol.py: main implementation of WRPC protocolnet/interop.py: .NET Framework Interop full implementationnet/ntl.pyandnet/ntlext.py: NTL and its extensionnet/ntlgen.py: Python code generator from .NET assembly (part of NTL)java/interop.py: Java Interop full implementationjava/jtl.py: Java Template Librarywinrt/winrtns.py: definitions of WinRT namespaces, core importwet/trace.py: implementation of WET - Windows Event Tracingdbg/wd.py: implementation of WD - Win Debuggercom/dispatch.py: definition for OLE Automation wrappercom/icl/iclstorage: main storage place for ICL files
