Python for Windows (pywin32) Extensions

Overview

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.

Build 228 is the last build supporting Python 2, and as part of this transition, all code in the repository is now using Python 3 syntax. To highlight and celebrate this change, build 228 is the last numbered 2XX - the following build numbers start at 300.

In other words, there is no build 229 - the build numbers jump from 228 to 300.

As of build 222, pywin32 has a new home at github. You can find build 221 and later on github and older versions can be found on the old project home at sourceforge

A special shout-out to @xoviat who provided enormous help with the github move!

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

Installing via PIP

You can install pywin32 via pip:

pip install pywin32

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 the following command from an elevated command prompt:

python Scripts/pywin32_postinstall.py -install

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.

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

  • 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)

  • Upload the .exe installers to github (using the web UI), the .whl files to pypi (using py -3.5 -m twine upload dist/*XXX*.whl where XXX is the build number).

  • Send mail to python-win32

Comments
  • Could not find a version that satisfies the requirement pywin32>=223

    Could not find a version that satisfies the requirement pywin32>=223

    Since a few days I have issues with installing pyInstaller (depending on pywin32). It's running on a continious deployment platform, so I am surprised it appeared out of the blue.

    The error I am having is: Could not find a version that satisfies the requirement pywin32>=223 (from pypiwin32->pyinstaller) (from versions: ) No matching distribution found for pywin32>=223 (from pypiwin32->pyinstaller)

    I tried to bypass this by installing the pythonwheel manually. I downloaded https://pypi.python.org/packages/65/83/0b14690d70bcd193a67c8b0a640129717e37a11d8e6a3e28a01e47910737/pywin32-223-cp27-cp27m-win_amd64.whl#md5=c9d2d260ef87592bb04cbc59f1ffe2d2 but the installation is failing because pywin32-223-cp27-cp27m-win_amd64.whl is not a supported wheel on this platform.

    The full error trail:

    wine64 c:\\Python-64\\python.exe c:\\Python-64\\scripts\\pip.exe install pyinstaller --upgrade
    e:heap:HeapSetInformation 0x3b4000 0 0x32fcd0 4
    fixme:heap:HeapSetInformation 0x8e0000 0 0x329110 4
    Collecting pyinstaller
    fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
    fixme:toolhelp:Heap32ListFirst : stub
      Downloading PyInstaller-3.3.1.tar.gz (3.5MB)
        100% |################################| 3.5MB 121kB/s 
    fixme:heap:HeapSetInformation 0x3b4000 0 0x32fcd0 4
    fixme:heap:HeapSetInformation 0x8e0000 0 0x3252a0 4
    Collecting setuptools (from pyinstaller)
      Downloading setuptools-38.5.1-py2.py3-none-any.whl (489kB)
        100% |################################| 491kB 685kB/s 
    Collecting pefile>=2017.8.1 (from pyinstaller)
      Downloading pefile-2017.11.5.tar.gz (61kB)
        100% |################################| 65kB 3.1MB/s 
    fixme:heap:HeapSetInformation 0x3b4000 0 0x32fcd0 4
    fixme:heap:HeapSetInformation 0x8e0000 0 0x3252a0 4
    Collecting macholib>=1.8 (from pyinstaller)
      Downloading macholib-1.9-py2.py3-none-any.whl (40kB)
        100% |################################| 40kB 3.7MB/s 
    Collecting future (from pyinstaller)
      Downloading future-0.16.0.tar.gz (824kB)
        100% |################################| 827kB 468kB/s 
    fixme:heap:HeapSetInformation 0x3b4000 0 0x32fcd0 4
    fixme:heap:HeapSetInformation 0x8e0000 0 0x3252a0 4
    Collecting pypiwin32 (from pyinstaller)
      Downloading pypiwin32-223-py3-none-any.whl
    Collecting altgraph>=0.15 (from macholib>=1.8->pyinstaller)
      Downloading altgraph-0.15-py2.py3-none-any.whl
    Collecting pywin32>=223 (from pypiwin32->pyinstaller)
      Could not find a version that satisfies the requirement pywin32>=223 (from pypiwin32->pyinstaller) (from versions: )
    No matching distribution found for pywin32>=223 (from pypiwin32->pyinstaller)
    

    Any idea what is causing this?

    The full build log can be found here, if you need more context information on the issue: https://travis-ci.org/vincentcox/StaCoAn/jobs/346428154 (but as far I can see I posted all the relevant information here).

    Related issue: https://github.com/pyinstaller/pyinstaller/issues/3340#issuecomment-369051788

    opened by vincentcox 40
  • win32service: pythonX.dll or pythoncomXX.dll missing warning issued even if those DLLs are on the system path.

    win32service: pythonX.dll or pythoncomXX.dll missing warning issued even if those DLLs are on the system path.

    Hi,

    Tody I updated my pywin32. After installing a service it printed a new warning that there are no pythonX.dll or pythoncomXX.dll files near the executable and that this could cause problems. It recommends to copy those files in the main python folder. But the files were already there in my case. Could you please add a check weather your recommendation is already fullfilled? In that case there is no need to display a warning.

    opened by Wissperwind 37
  • PyRegEnumValue fails on i18n systems

    PyRegEnumValue fails on i18n systems

    If you try to enumerate the contents of the registry key:

    "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Control Panel\\Cursors\\Schemes"

    pywin32 will fail with a (234, "PyRegEnumValue", ""), which means that RegEnumValue returned with ERROR_MORE_DATA.

    The method pywin32 currently uses to detect the size of the value name buffer does not work properly on Windows 2003 X64 Japanese.

    To fix this bug you must make the code look like the follwing:

    // @pymethod (string,object,type)|win32api|RegEnumValue|Enumerates values of the specified open registry key. The function retrieves the name of one subkey each time it is called.

    static PyObject *

    PyRegEnumValue( PyObject *self, PyObject *args )

    {

    // This value is taken from MSDN docs.

    const DWORD maxValueNameSize=16384;

    HKEY hKey;

    PyObject *obKey;

    int index;

    long rc;

    TCHAR retValueBuf[maxValueNameSize];

    BYTE *retDataBuf;

    DWORD retValueSize = maxValueNameSize;

    DWORD retDataSize=0;

    DWORD typ;

    // @pyparm <o PyHKEY>/int|key||An already open key, or any one of the following win32con constants:<nl>HKEY_CLASSES_ROOT<nl>HKEY_CURRENT_USER<nl>HKEY_LOCAL_MACHINE<nl>HKEY_USERS

    // @pyparm int|index||The index of the key to retrieve.

    if (!PyArg_ParseTuple(args, "Oi:PyRegEnumValue", &obKey, &index))

    return NULL;

    if (!PyWinObject_AsHKEY(obKey, &hKey))

    return NULL;

    // @pyseeapi PyRegEnumValue

    PyW32_BEGIN_ALLOW_THREADS

    rc=RegEnumValue(hKey, index, retValueBuf, &retValueSize, NULL, &typ, NULL, &retDataSize);

    PyW32_END_ALLOW_THREADS

    // Reset because the call above messed it up.

    retValueSize=maxValueNameSize;

    // Don't need to increment because the size returned from RegEnumValue includes any needed terminators.

    retDataBuf= (BYTE * )alloca(retDataSize);

    if ((retDataBuf==NULL)){

    PyErr_NoMemory();

    return NULL;

    }

    rc=RegEnumValue(hKey, index, retValueBuf, &retValueSize, NULL, &typ, retDataBuf, &retDataSize);

    if (rc!=ERROR_SUCCESS)

    {

    return ReturnAPIError("PyRegEnumValue", rc);

    }

    PyObject *obData=PyWinObject_FromRegistryValue(retDataBuf, retDataSize, typ);

    if (obData==NULL)

    {

    return NULL;

    }

    PyObject *retVal = Py_BuildValue("NOi", PyWinObject_FromTCHAR(retValueBuf), obData, typ);

    Py_DECREF(obData);

    return retVal;

    // @comm This function is typically called repeatedly, until an exception is raised, indicating no more values.

    }

    Reported by: neverjade

    Original Ticket: "pywin32/bugs/356":https://sourceforge.net/p/pywin32/bugs/356

    bug sourceforge auto-migrated win32 
    opened by ghost 36
  • ImportError: DLL load failed while importing win32event: The specified module could not be found.

    ImportError: DLL load failed while importing win32event: The specified module could not be found.

    I just installed Python 3.8.0 32-bit, then installed a few modules including pywin32 using pip. When I try "import win32event", I get the following error:

    Python 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:21:23) [MSC v.1916 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.

    import win32event Traceback (most recent call last): File "", line 1, in ImportError: DLL load failed while importing win32event: The specified module could not be found.

    The same happens when I try "import win32com".

    Since I found this http://www.xavierdupre.fr/blog/2014-07-01_nojs.html , I tried adding c:\python3.8.0-32\lib\site-packages\pywin32_system32 to my path and then restarting cmd and importing win32event again and still got the same error.

    I also tried adding

    path = os.path.join(os.path.split(sys.executable)[0], "Lib","site-packages","pywin32_system32") os.environ["PATH"] = os.environ["PATH"] + ";" + path

    before calling qt5reactor.install() #(which is what's trying to load win32event), and that didn't work either.

    I also have Python 2.7 and Python 3.6 installed, but I don't seem to to have pywin32 installed on those versions of Python.

    I saw that a similar issue had been submitted, but it seems that it was decided that that error was due to some custom installation, and in my case there was no custom installation.

    I just tried copying the dll's in c:\python3.8.0-32\lib\site-packages\pywin32_system32 to c:\python3.8.0-32, and now the import statement works.

    opened by inhahe 32
  • win32file.TransmitFile and ConnectEx patch

    win32file.TransmitFile and ConnectEx patch

    sample usage:

    import win32file, socket, pywintypes s = socket.socket() f = file('somefile','rb') s.connect(('192.168.111.128',10002)) ol = pywintypes.OVERLAPPED() print win32file.TransmitFile(s, win32file._get_osfhandle(f.fileno()), 0, 0, ol, 0, "prepended data", "appended data") length = win32file.GetOverlappedResult(s.fileno(), ol, 1) print length

    I hope I haven't done the wrong thing but for the sake of simplicity I'm providing a patch the includes the previous ConnectEx patch (hopefully it'll get accepted :)

    Reported by: ionel_mc

    Original Ticket: "pywin32/patches/84":https://sourceforge.net/p/pywin32/patches/84

    sourceforge auto-migrated patch 
    opened by ghost 29
  • No matching distribution found for pywin32==301 (from -r /tmp/build_901af13b/requirements.txt (line 43))

    No matching distribution found for pywin32==301 (from -r /tmp/build_901af13b/requirements.txt (line 43))

    Note that issues in this repository are only for bugs or feature requests in the pywin32.

    If you need support or help using this package, please follow these instructions - support or help requests will be closed without comment.

    For all bugs, please provide the following information.

    • Expected behavior and actual behavior.

    • Steps to reproduce the problem.

    • Version of Python and pywin32

    opened by uhavaiya 27
  • win32com is mishandling in/out byref arguments

    win32com is mishandling in/out byref arguments

    I have an enterprise level customer who is trying to use one of our mature MFC application's COM interface via Python. The customer is reporting issues with this, and as I explored it we found that the reported behavior is occurring due to the behavior in the Python win32com library. Our application interface has some methods that do not work, but only when using Python. Using .NET, VBA, Matlab, or LabVIEW, all methods work as expected in the same build. I've reproduced the issues using the latest version of Anaconda, freshly downloaded and reinstalled. My customer is using a Jupyter Notebook environment.

    I have reproduced the issues outside of our product and have provided this project.

    Note, I am a relative novice at Python and its entire ecosystem. I believe this is the correct place for this bug report. If not, I would appreciate the insight of where to go next.

    Anaconda 2018.12 / Spyder 3.3.2 Python 3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)]

    • Attachments

      • A zip archive ( python_win32com_issue1303.zip ) with the following:
      • A VS2017 solution which provides a C++/MFC COM server app. The executable and tlb are also provided if they cannot be built. The executable must be run once to register the server.
      • A Python script which executes the provided COM methods and demonstrates two odd behaviors of win32com.
      • An Excel VBA example which executes the provided COM methods and demonstrates that they work successfully in other languages.
    • Expected behavior and actual behavior. The affected methods always have byref variant arguments.

      • Given a method signature of (VTS_I2, VTS_I2, VTS_PR4, VTS_PR4, VTS_PBOOL), the first two are input arguments and the next three are input/output arguments. The result is that only the first in/out byref argument is populated by win32com, and any following arguments are modified from the initialization value, but are returned as zero, regardless of variant type. Expected Behavior: left bound: 1234.789 right bound: 6789.123 enabled: True Actual behavior: left bound: 1234.7889404296875 right bound: 0 enabled: 0

      • Given a method signature of (VTS_PR4, VTS_PR4, VTS_PBOOL), all arguments are populated, but in reverse order, regardless of variant type! This is the same as reported in bug https://github.com/mhammond/pywin32/issues/622. Expected Behavior: left bound: 1234.789 right bound: 6789.123 enabled: True Actual behavior: left bound: True right bound: 6789.123046875 enabled: 1234.7889404296875

      • Given a method signature of (VTS_PR4) or (VTS_PBOOL) alone, these work correctly. Single Float argument: left bound: 1234.7889404296875 Single Boolean argument: enabled: True

    • Steps to reproduce the problem.

      • I have attached a Python script which produces these issues, a COM server to provide the interface, and an Excel (VBA) example to illustrate the problem is limited to Python win32com.

    edit a grammar correction

    opened by russleikis 23
  • isapi extension seem Error for large file posting in iis

    isapi extension seem Error for large file posting in iis

    hi all, I try to submit a large file (2Mb+) to iis with pywin32 isapi extension via html form (POST method), but end out with "The page cannot be displayed" for IE and "server connection reset" for firefox. This happen even with attached module "C:\Python24 \Lib\site-packages\isapi\test\extension_simple.py". The form with this "CONTENT_TYPE=multipart/form-data; boundary=---------------------------7d629bf20426"

    is it a limitation in isapi or some bug in it??? can someone help me on this???

    Reported by: cheengshuchin

    Original Ticket: "pywin32/bugs/300":https://sourceforge.net/p/pywin32/bugs/300

    bug sourceforge auto-migrated win32 
    opened by ghost 22
  • Support python 3.10

    Support python 3.10

    pip install pywin32

    ERROR: Could not find a version that satisfies the requirement pywin32 (from versions: none)
    ERROR: No matching distribution found for pywin32
    
    opened by KotlinIsland 19
  • [Feature Request]Transforming the screenshot data into a OpenCV image

    [Feature Request]Transforming the screenshot data into a OpenCV image

    Hi, guys, I have been using saveBitMap.SaveBitmapFile(saveDC, "output\"+str+".bmp"), to get the .bmp file, but I am concerned that the transition to a .bmp file would be slower if I could just transform the data into a OpenCV image all in the RAM , without any IO operations.

    opened by songyuc 17
  • pypiwin32 version 222 - Failed to be installed

    pypiwin32 version 222 - Failed to be installed

    New version of pypiwin32 (version 222) updated on 25-1-2018 cannot be installed.

    Sometimes, package is being installed, however when trying to import "win32api" module, an exception occurred.

    Does anyone have this problem?

    bug 
    opened by kfirilani 17
  • ValueError: This string is an invalid PIDL (win32 exception unpacking)

    ValueError: This string is an invalid PIDL (win32 exception unpacking)

    Error in example:

        pidl = shell.AddressAsPIDL(lp)
    ValueError: This string is an invalid PIDL (win32 exception unpacking)
    
    

    Please, commenting the example-code would be nice.

    • Version of Python and pywin32 Python 3.10.8
    opened by Jomme5 0
  • How do I pass parameter to a property?

    How do I pass parameter to a property?

    Using Range.AddressLocal as an example, I'm unable to pass ReferenceStyle using Range.AddressLocal(ReferenceStyle=xlR1C1) as AddressLocal is a property and not a method.

    Trying to do so will raise the following TypeError:

    TypeError: 'str' object is not callable

    opened by weiw11 0
  • Added support for adding a categoryDLL when registering a source msgDLL

    Added support for adding a categoryDLL when registering a source msgDLL

    Adds category support to AddSourceToRegistry which shows up as strings in "task category" in the event viewer. It is automatically cleaned up by the existing RemoveSourceFromRegistry (no other changes are needed).

    opened by billmccartney 0
  • Lost dlls path after upgraded python to 3.11.1 which results not able to load any modules from there.

    Lost dlls path after upgraded python to 3.11.1 which results not able to load any modules from there.

    1. Install python3.11.0, install pywin305. Then upgrade to python 3.11.1.
    2. Launch PythonWin, in interaction shell code: import socket
    3. It results: ModuleNotFoundError: No module named '_socket'
    4. inspect sys.path: ['', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\python311.zip', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\win32', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\win32\lib', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\Pythonwin'] image

    No dlls found.

    opened by xygwfxu 0
  • Fix: flake8

    Fix: flake8 "undefined name" errors

    which is the more serious group of errors.

    Errors generated by: python -m flake8 . --ignore=W,E,F403,F405 --exclude=build | grep "undefined name"

    (See #1986 for full error list etc. in comment & attachment)


    Errors:

    .\Pythonwin\Scintilla\src\LexGen.py:203:12: F821 undefined name 'cmp'
    .\Pythonwin\pywin\Demos\cmdserver.py:78:9: F821 undefined name 'writer'
    .\Pythonwin\pywin\Demos\cmdserver.py:95:9: F821 undefined name 'writer'
    .\Pythonwin\pywin\Demos\fontdemo.py:48:9: F821 undefined name 'selfInvalidateRect'
    .\Pythonwin\pywin\Demos\ocx\msoffice.py:128:20: F821 undefined name 'MyWordControl'
    .\Pythonwin\pywin\Demos\ocx\ocxtest.py:228:9: F821 undefined name 'TestCOMMDialog'
    .\Pythonwin\pywin\debugger\__init__.py:5:5: F821 undefined name 'app'
    .\Pythonwin\pywin\dialogs\ideoptions.py:119:13: F821 undefined name 'SaveFontPreferences'
    .\Pythonwin\pywin\dialogs\ideoptions.py:126:13: F821 undefined name 'SaveFontPreferences'
    .\Pythonwin\pywin\dialogs\ideoptions.py:133:13: F821 undefined name 'SaveFontPreferences'
    .\Pythonwin\pywin\dialogs\ideoptions.py:140:13: F821 undefined name 'SaveFontPreferences'
    .\Pythonwin\pywin\framework\dlgappcore.py:29:56: F821 undefined name 'dc'
    .\Pythonwin\pywin\framework\interact.py:335:34: F821 undefined name 'banner'
    .\Pythonwin\pywin\framework\mdi_pychecker.py:308:26: F821 undefined name 'reduce'
    .\Pythonwin\pywin\framework\stdin.py:172:26: F821 undefined name 'raw_input'
    .\Pythonwin\pywin\scintilla\configui.py:290:12: F821 undefined name 'ColorEditorPropertyPage'
    .\Pythonwin\pywin\scintilla\configui.py:291:13: F821 undefined name 'pywin'
    .\Pythonwin\pywin\scintilla\scintillacon.py:5:12: F821 undefined name 'HandleToULong'
    .\Pythonwin\pywin\scintilla\scintillacon.py:9:12: F821 undefined name 'ULongToHandle'
    .\Pythonwin\pywin\scintilla\scintillacon.py:13:12: F821 undefined name 'ULongToPtr'
    .\Pythonwin\pywin\scintilla\scintillacon.py:17:12: F821 undefined name 'UIntToPtr'
    .\Pythonwin\pywin\scintilla\view.py:84:17: F821 undefined name '_event_commands'
    .\Pythonwin\pywin\scintilla\view.py:90:21: F821 undefined name '_extra_event_commands'
    .\Pythonwin\pywin\tools\TraceCollector.py:53:16: F821 undefined name 'rc'
    
    .\adodbapi\process_connect_string.py:51:29: F821 undefined name 'os'
    .\com\win32com\__init__.py:32:78: F821 undefined name 'sys'
    .\com\win32com\__init__.py:33:15: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:34:13: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:41:33: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:43:20: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:49:21: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:51:20: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:61:34: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:63:16: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:69:32: F821 undefined name 'win32api'
    .\com\win32com\__init__.py:70:20: F821 undefined name 'win32api'
    .\com\win32com\client\combrowse.py:47:16: F821 undefined name 'cmp'
    .\com\win32com\client\genpy.py:111:15: F821 undefined name 'cmp'
    .\com\win32com\client\genpy.py:113:19: F821 undefined name 'cmp'
    .\com\win32com\server\dispatcher.py:246:9: F821 undefined name 'pywin'
    .\com\win32com\server\dispatcher.py:267:21: F821 undefined name 'pywin'
    .\com\win32com\server\dispatcher.py:268:17: F821 undefined name 'pywin'
    .\com\win32com\server\dispatcher.py:274:17: F821 undefined name 'pywin'
    .\com\win32com\server\exception.py:93:21: F821 undefined name 'pythoncon'
    .\com\win32com\test\daodump.py:82:16: F821 undefined name 'pythoncom'
    .\com\win32com\test\testClipboard.py:71:9: F821 undefined name 'RaiseCOMException'
    .\com\win32com\test\testGatewayAddresses.py:88:25: F821 undefined name 'DelegatedDummy'
    
    .\com\win32comext\axdebug\Test\host.py:36:16: F821 undefined name 'wrappedExternalConnectionManager'
    .\com\win32comext\axdebug\Test\host.py:101:29: F821 undefined name 'scode'
    .\com\win32comext\axdebug\Test\host.py:101:38: F821 undefined name 'E_FAIL'
    .\com\win32comext\axdebug\Test\host.py:106:30: F821 undefined name 'module'
    .\com\win32comext\axdebug\Test\host.py:125:13: F821 undefined name 'BuildModuleTree'
    .\com\win32comext\axdebug\Test\host.py:127:22: F821 undefined name 'CreateDebugDocumentHelperNodes'
    .\com\win32comext\axdebug\Test\host.py:129:5: F821 undefined name 'AttachParentNodes'
    .\com\win32comext\axdebug\Test\host.py:134:5: F821 undefined name 'ttest'
    .\com\win32comext\axdebug\Test\host.py:149:13: F821 undefined name 'BuildModuleTree'
    .\com\win32comext\axdebug\Test\host.py:150:22: F821 undefined name 'CreateDebugDocumentHelperNodes'
    .\com\win32comext\axdebug\Test\host.py:151:5: F821 undefined name 'AttachParentNodes'
    .\com\win32comext\axdebug\codecontainer.py:246:20: F821 undefined name 'os'
    .\com\win32comext\axdebug\expressions.py:187:13: F821 undefined name 'dictionary'
    .\com\win32comext\axdebug\expressions.py:188:13: F821 undefined name 'stackFrame'
    .\com\win32comext\axscript\client\pydumper.py:69:5: F821 undefined name 'CreateRegKey'
    .\com\win32comext\axscript\client\pydumper.py:71:5: F821 undefined name 'win32com'
    .\com\win32comext\axscript\client\pydumper.py:72:5: F821 undefined name 'win32com'
    .\com\win32comext\shell\demos\servers\context_menu.py:52:23: F821 undefined name 'CMF_DEFAULTONLY'
    .\com\win32comext\shell\demos\servers\shell_view.py:843:21: F821 undefined name 'file'
    
    .\isapi\install.py:210:12: F821 undefined name 'exc'
    .\isapi\install.py:210:30: F821 undefined name 'exc'
    .\isapi\install.py:211:19: F821 undefined name 'exc'
    
    .\pywin32_postinstall.py:692:15: F821 undefined name 'argparse'
    .\win32\Lib\mmsystem.py:221:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:225:13: F821 undefined name 'DWORD'
    .\win32\Lib\mmsystem.py:711:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:715:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:715:21: F821 undefined name 'WORD'
    .\win32\Lib\mmsystem.py:719:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:723:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:727:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:727:21: F821 undefined name 'WORD'
    .\win32\Lib\mmsystem.py:731:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:735:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:739:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:743:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:743:21: F821 undefined name 'WORD'
    .\win32\Lib\mmsystem.py:747:13: F821 undefined name 'BYTE'
    .\win32\Lib\mmsystem.py:954:12: F821 undefined name 'MAKELONG'
    .\win32\Lib\pywin32_testutil.py:25:16: F821 undefined name 'buffer'
    .\win32\Lib\pywin32_testutil.py:33:16: F821 undefined name 'buffer'
    .\win32\Lib\win32gui_struct.py:92:20: F821 undefined name 'buffer'
    .\win32\Lib\win32rcparser.py:604:12: F821 undefined name 'rcp'
    .\win32\Lib\win32timezone.py:682:16: F821 undefined name 'cmp'
    .\win32\Lib\winnt.py:164:13: F821 undefined name 'WORD'
    .\win32\Lib\winnt.py:168:13: F821 undefined name 'WORD'
    .\win32\Lib\winnt.py:175:13: F821 undefined name 'WORD'
    .\win32\Lib\winnt.py:179:13: F821 undefined name 'WORD'
    .\win32\Lib\winnt.py:179:22: F821 undefined name 'DWORD'
    .\win32\Lib\winnt.py:933:13: F821 undefined name 'Ordinal'
    .\win32\Lib\winnt.py:937:12: F821 undefined name 'Ordinal'
    .\win32\scripts\VersionStamp\BrandProject.py:32:9: F821 undefined name 'SubstituteVSSInFile'
    .\win32\scripts\VersionStamp\BrandProject.py:67:12: F821 undefined name 'getopts'
    .\win32\scripts\backupEventLog.py:28:12: F821 undefined name 'win32evtlogutil'
    .\win32\scripts\rasutil.py:41:9: F821 undefined name 'win32api'
    .\win32\test\test_win32api.py:45:47: F821 undefined name 'time'
    .\win32\test\test_win32api.py:51:38: F821 undefined name 'time'
    .\win32\test\test_win32wnet.py:112:18: F821 undefined name 'Netbios'
    .\win32\test\test_win32wnet.py:116:28: F821 undefined name 'byte_to_int'
    .\win32\test\test_win32wnet.py:120:13: F821 undefined name 'Netbios'
    
    opened by kxrob 0
  • Specify system import library in setup.py

    Specify system import library in setup.py

    The 'pragma comment' specifier is MSVC and Visual Studio specific. It does not work in mingw environment with gcc or clang. So, this fixes linking with those system libraries in mingw and resolves unknown pragma warnings also.

    opened by Biswa96 0
Releases(b305)
Owner
Mark Hammond
Mark Hammond
Python for Windows (pywin32) Extensions

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

Mark Hammond 4.1k Jan 02, 2023