py2docfx 0.1.13.dev2016723__py3-none-any.whl → 0.1.13.dev2021865__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_modified.py +26 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -603
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/archive_util.py +48 -18
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/ccompiler.py +17 -1257
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/cmd.py +133 -41
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/bdist.py +19 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +2 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +6 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build.py +8 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +8 -7
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +32 -13
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_py.py +10 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +3 -14
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/clean.py +2 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/config.py +1 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install.py +22 -19
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install_data.py +4 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install_headers.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install_lib.py +11 -7
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +4 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/sdist.py +22 -16
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/__init__.py +6 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +1391 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/cygwin.py +340 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/errors.py +24 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +614 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/{tests/test_ccompiler.py → compilers/C/tests/test_base.py} +9 -19
- py2docfx/venv/{venv1/Lib/site-packages/setuptools/_distutils/tests/test_cygwinccompiler.py → basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_cygwin.py} +7 -12
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/{tests/test_mingwccompiler.py → compilers/C/tests/test_mingw.py} +12 -20
- py2docfx/venv/{venv1/Lib/site-packages/setuptools/_distutils/tests/test_msvccompiler.py → basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_msvc.py} +11 -12
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/{tests/test_unixccompiler.py → compilers/C/tests/test_unix.py} +5 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +409 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/zos.py +230 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +20 -328
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dist.py +148 -80
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/errors.py +11 -27
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/extension.py +19 -16
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/filelist.py +80 -15
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/spawn.py +22 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/sysconfig.py +32 -7
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +13 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_sdist.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +2 -401
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/util.py +38 -23
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/zosccompiler.py +2 -228
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_static.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/editable_wheel.py +3 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/install.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_py.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/unicode_utils.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/__init__.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/ado_consts.py +3 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/adodbapi.py +22 -26
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/apibase.py +3 -4
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_print.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_table_names.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/process_connect_string.py +7 -7
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/setup.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitest.py +21 -73
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitestconfig.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/dbapi20.py +11 -17
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/setuptestframework.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/isapi/install.py +8 -11
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_asynch.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_with_filter.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/isapi/simple.py +1 -0
- py2docfx/venv/venv1/Lib/site-packages/isapi/threaded_extension.py +1 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/basictimerapp.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/customprint.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/demoutils.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/cmdserver.py +2 -5
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/guidemo.py +14 -41
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/objdoc.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/demoutils.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/flash.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxserialtest.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxtest.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/webbrowser.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/openGLDemo.py +57 -12
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/toolbar.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/configui.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgcon.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/debugger.py +7 -8
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/fail.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/ideoptions.py +7 -10
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/list.py +11 -8
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/login.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/DockingBar.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/app.py +19 -22
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dbgcommands.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/ModuleBrowser.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/__init__.py +3 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/document.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/editor.py +6 -6
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/vss.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/help.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/interact.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpyapp.py +5 -7
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpydde.py +7 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/scriptutils.py +4 -6
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/sgrepmdi.py +13 -22
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/startup.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/stdin.py +1 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/toolmenu.py +0 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoIndent.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/CallTips.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/activex.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/dialog.py +7 -10
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/IDLEenvironment.py +1 -5
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/bindings.py +4 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/config.py +3 -5
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/configui.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/document.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/formatter.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/keycodes.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/scintillacon.py +1178 -78
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/view.py +17 -21
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browser.py +6 -18
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/hierlist.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_modified.py +26 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -603
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/archive_util.py +48 -18
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/ccompiler.py +17 -1257
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/cmd.py +133 -41
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/bdist.py +19 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +6 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build.py +8 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_clib.py +8 -7
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_ext.py +32 -13
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_py.py +10 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +3 -14
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/clean.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/config.py +1 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install.py +22 -19
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install_data.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install_headers.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install_lib.py +11 -7
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/sdist.py +22 -16
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/__init__.py +6 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +1391 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/cygwin.py +340 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/errors.py +24 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +614 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/{tests/test_ccompiler.py → compilers/C/tests/test_base.py} +9 -19
- py2docfx/venv/{basevenv/Lib/site-packages/setuptools/_distutils/tests/test_cygwinccompiler.py → venv1/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_cygwin.py} +7 -12
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/{tests/test_mingwccompiler.py → compilers/C/tests/test_mingw.py} +12 -20
- py2docfx/venv/{basevenv/Lib/site-packages/setuptools/_distutils/tests/test_msvccompiler.py → venv1/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_msvc.py} +11 -12
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/{tests/test_unixccompiler.py → compilers/C/tests/test_unix.py} +5 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +409 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/zos.py +230 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +20 -328
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dist.py +148 -80
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/errors.py +11 -27
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/extension.py +19 -16
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/filelist.py +80 -15
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/spawn.py +22 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/sysconfig.py +32 -7
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +13 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_sdist.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/unixccompiler.py +2 -401
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/util.py +38 -23
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/zosccompiler.py +2 -228
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_static.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/command/editable_wheel.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/command/install.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +2 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_py.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/unicode_utils.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtFormatMessage.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_push.py +8 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/GetSaveFileName.py +8 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/c_extension/setup.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeclient.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeserver.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/getfilever.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/runproc.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/rastest.py +4 -6
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/GetTokenInformation.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/account_rights.py +0 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/explicit_entries.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/get_policy_info.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/list_rights.py +0 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/localized_names.py +7 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/query_information.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_audit.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_owner.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_policy_info.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setkernelobjectsecurity.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setsecurityinfo.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setuserobjectsecurity.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/fetch_url.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/simple_auth.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/socket_server.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestService.py +10 -9
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestServiceClient.py +6 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboardDemo.py +17 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32comport_demo.py +32 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32console_demo.py +1 -4
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_devicenotify.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_menu.py +60 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_taskbar.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32netdemo.py +2 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32ts_logoff_disconnected.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/testwnet.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/commctrl.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/netbios.py +8 -10
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_bootstrap.py +2 -10
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_testutil.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywintypes.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/regutil.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspi.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win2kras.py +14 -7
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32con.py +16 -35
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32cryptcon.py +1 -4
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32evtlogutil.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32gui_struct.py +6 -6
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhquery.py +10 -11
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhutil.py +5 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32rcparser.py +1 -0
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32serviceutil.py +4 -6
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32timezone.py +304 -121
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32verstamp.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winerror.py +4926 -604
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winxptheme.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/h2py.py +194 -0
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_postinstall.py +733 -0
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_testall.py +120 -0
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/regsetup.py +4 -7
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/setup_d.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/handles.py +13 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_clipboard.py +12 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_sspi.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32api.py +8 -4
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32clipboard.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32cred.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32crypt.py +16 -3
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32file.py +24 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32gui.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32guistruct.py +2 -5
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32inet.py +23 -6
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32net.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32ts.py +19 -0
- py2docfx/venv/venv1/Lib/site-packages/win32/winxpgui.py +3 -11
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/CLSIDToClass.py +3 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/__init__.py +97 -65
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/build.py +24 -24
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/combrowse.py +17 -33
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/dynamic.py +14 -14
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/gencache.py +30 -12
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/genpy.py +50 -98
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/makepy.py +12 -8
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/selecttlb.py +3 -4
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/util.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/dump_clipboard.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelAddin.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelRTDServer.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/iebutton.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/ietoolbar.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/outlookAddin.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegw.py +48 -56
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwenum.py +2 -6
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwparse.py +9 -11
- py2docfx/venv/venv1/Lib/site-packages/win32com/olectl.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/connect.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/dispatcher.py +20 -24
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/exception.py +8 -8
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/policy.py +4 -18
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/register.py +5 -6
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/dictionary.py +2 -5
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/interp.py +7 -7
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/test_pycomtest.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/GenTestScripts.py +2 -4
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/errorSemantics.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/pippo_server.py +1 -4
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testADOEvents.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAXScript.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDictionary.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDynamic.py +3 -5
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExchange.py +2 -7
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGatewayAddresses.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testIterators.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOffice.py +40 -57
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOfficeEvents.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPersist.py +7 -7
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPippo.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPyComTest.py +143 -7
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testServers.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testall.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testmakepy.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvb.py +12 -8
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/util.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/universal.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/win32com/util.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/scp.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/search.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditSecurity.py +1 -24
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py +0 -20
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/adb.py +2 -8
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/codecontainer.py +16 -12
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/contexts.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/debugger.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/documents.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/dump.py +2 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/expressions.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/util.py +7 -14
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/debug.py +2 -14
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/error.py +4 -5
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/framework.py +5 -5
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pydumper.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript.py +5 -10
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/scriptdispatch.py +3 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/axsite.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/leakTest.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost4Dbg.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/test_bits.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/demo/filterDemo.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/demos/mapisend.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/emsabtags.py +1 -0
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapitags.py +1 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapiutil.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/test/testpropsys.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IFileOperationProgressSink.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/ITransferAdviseSink.py +5 -3
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/column_provider.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/copy_hook.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/empty_volume_cache.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/folder_view.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/icon_handler.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/shell_view.py +4 -5
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_2.py +0 -1
- py2docfx/venv/venv1/Scripts/pywin32_postinstall.py +77 -122
- py2docfx/venv/venv1/Scripts/pywin32_testall.py +4 -9
- {py2docfx-0.1.13.dev2016723.dist-info → py2docfx-0.1.13.dev2021865.dist-info}/METADATA +1 -1
- {py2docfx-0.1.13.dev2016723.dist-info → py2docfx-0.1.13.dev2021865.dist-info}/RECORD +342 -330
- py2docfx/venv/venv1/Lib/site-packages/docs/conf.py +0 -384
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/mdi_pychecker.py +0 -850
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testNetscape.py +0 -24
- {py2docfx-0.1.13.dev2016723.dist-info → py2docfx-0.1.13.dev2021865.dist-info}/WHEEL +0 -0
- {py2docfx-0.1.13.dev2016723.dist-info → py2docfx-0.1.13.dev2021865.dist-info}/top_level.txt +0 -0
@@ -17,30 +17,29 @@ from win32com.test.util import CheckClean
|
|
17
17
|
|
18
18
|
# Test a few of the MSOffice components.
|
19
19
|
def TestWord():
|
20
|
-
# Try and load the object exposed by Word 8
|
21
|
-
# Office 97 - _totally_ different object model!
|
22
20
|
try:
|
23
|
-
#
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
21
|
+
# Office 97 - _totally_ different object model!
|
22
|
+
word7 = win32com.client.Dispatch("Word.Basic")
|
23
|
+
# Check if any property needed by TestWord7 is not None
|
24
|
+
if word7.FileNew:
|
25
|
+
print("Starting Word 7 for dynamic test")
|
26
|
+
TestWord7(word7)
|
27
|
+
else:
|
28
|
+
# NOTE - using "client.Dispatch" would return an msword8.py instance!
|
29
|
+
print("Starting Word 8 for dynamic test")
|
30
|
+
word = win32com.client.dynamic.Dispatch("Word.Application")
|
31
|
+
TestWord8(word)
|
32
|
+
|
33
|
+
word = None
|
34
|
+
# Now we will test Dispatch without the new "lazy" capabilities
|
35
|
+
print("Starting Word 8 for non-lazy dynamic test")
|
36
|
+
dispatch = win32com.client.dynamic._GetGoodDispatch("Word.Application")
|
37
|
+
typeinfo = dispatch.GetTypeInfo()
|
38
|
+
attr = typeinfo.GetTypeAttr()
|
39
|
+
olerepr = win32com.client.build.DispatchItem(typeinfo, attr, None, 0)
|
40
|
+
word = win32com.client.dynamic.CDispatch(dispatch, olerepr)
|
41
|
+
dispatch = typeinfo = attr = olerepr = None
|
42
|
+
TestWord8(word)
|
44
43
|
except Exception as e:
|
45
44
|
print("Word dynamic tests failed", e)
|
46
45
|
traceback.print_exc()
|
@@ -74,24 +73,24 @@ def TestWord8(word):
|
|
74
73
|
doc = word.Documents.Add()
|
75
74
|
wrange = doc.Range()
|
76
75
|
for i in range(10):
|
77
|
-
wrange.InsertAfter("Hello from Python
|
76
|
+
wrange.InsertAfter(f"Hello from Python {i + 1}\n")
|
78
77
|
paras = doc.Paragraphs
|
79
|
-
|
80
|
-
#
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
78
|
+
if int(word.Version.split(".")[0]) >= 16:
|
79
|
+
# With Word 16 / Word 2019
|
80
|
+
for i, p in enumerate(paras):
|
81
|
+
p.Range.Font.ColorIndex = i + 1
|
82
|
+
p.Range.Font.Size = 12 + (4 * i)
|
83
|
+
else:
|
84
|
+
# NOTE: Iterating on paras doesn't seem to work - no error, just doesn't work
|
85
|
+
# for para in paras:
|
86
|
+
# para().Font...
|
87
|
+
for i in range(len(paras)):
|
88
|
+
p = paras(i + 1)
|
89
|
+
p.Font.ColorIndex = i + 1
|
90
|
+
p.Font.Size = 12 + (4 * i)
|
91
|
+
doc.Close(SaveChanges=False)
|
92
92
|
word.Quit()
|
93
|
-
win32api.Sleep(1000) # Wait for word to close, else we
|
94
|
-
# may get OA error.
|
93
|
+
win32api.Sleep(1000) # Wait for word to close, else we may get OA error.
|
95
94
|
|
96
95
|
|
97
96
|
def TestWord8OldStyle():
|
@@ -107,10 +106,7 @@ def TextExcel(xl):
|
|
107
106
|
xl.Visible = 1
|
108
107
|
assert xl.Visible, "Visible property not true."
|
109
108
|
|
110
|
-
|
111
|
-
xl.Workbooks.Add()
|
112
|
-
else:
|
113
|
-
xl.Workbooks().Add()
|
109
|
+
xl.Workbooks.Add()
|
114
110
|
|
115
111
|
xl.Range("A1:C1").Value = (1, 2, 3)
|
116
112
|
xl.Range("A2:C2").Value = ("x", "y", "z")
|
@@ -171,7 +167,7 @@ def TestAll():
|
|
171
167
|
try:
|
172
168
|
print("Starting Excel 8 for generated excel8.py test...")
|
173
169
|
mod = gencache.EnsureModule(
|
174
|
-
"{00020813-0000-0000-C000-000000000046}", 0, 1, 2, bForDemand=
|
170
|
+
"{00020813-0000-0000-C000-000000000046}", 0, 1, 2, bForDemand=True
|
175
171
|
)
|
176
172
|
xl = win32com.client.Dispatch("Excel.Application")
|
177
173
|
TextExcel(xl)
|
@@ -181,19 +177,6 @@ def TestAll():
|
|
181
177
|
print("Generated Excel tests failed", e)
|
182
178
|
traceback.print_exc()
|
183
179
|
|
184
|
-
try:
|
185
|
-
import xl5en32
|
186
|
-
|
187
|
-
mod = gencache.EnsureModule("{00020813-0000-0000-C000-000000000046}", 9, 1, 0)
|
188
|
-
xl = win32com.client.Dispatch("Excel.Application.5")
|
189
|
-
print("Starting Excel 95 for makepy test...")
|
190
|
-
TextExcel(xl)
|
191
|
-
except ImportError:
|
192
|
-
print("Could not import the generated Excel 95 wrapper")
|
193
|
-
except Exception as e:
|
194
|
-
print("Excel 95 tests failed", e)
|
195
|
-
traceback.print_exc()
|
196
|
-
|
197
180
|
|
198
181
|
if __name__ == "__main__":
|
199
182
|
TestAll()
|
@@ -6,7 +6,7 @@ import time
|
|
6
6
|
import types
|
7
7
|
|
8
8
|
import pythoncom
|
9
|
-
from win32com.client import
|
9
|
+
from win32com.client import DispatchWithEvents
|
10
10
|
|
11
11
|
stopEvent = threading.Event()
|
12
12
|
|
@@ -57,8 +57,8 @@ def TestExcel():
|
|
57
57
|
book = e.Workbooks.Add()
|
58
58
|
book = DispatchWithEvents(book, WorkbookEvents)
|
59
59
|
print("Have book", book)
|
60
|
-
#
|
61
|
-
#
|
60
|
+
# sheet = e.Worksheets(1)
|
61
|
+
# sheet = DispatchWithEvents(sheet, WorksheetEvents)
|
62
62
|
|
63
63
|
print("Double-click in a few of the Excel cells...")
|
64
64
|
print("Press any key when finished with Excel, or wait 10 seconds...")
|
@@ -42,8 +42,8 @@ class LockBytes:
|
|
42
42
|
return result
|
43
43
|
|
44
44
|
def WriteAt(self, offset, data):
|
45
|
-
print("WriteAt
|
46
|
-
print("len
|
45
|
+
print("WriteAt", offset)
|
46
|
+
print("len", len(data))
|
47
47
|
print("data:")
|
48
48
|
# print(data)
|
49
49
|
if len(self.data) >= offset:
|
@@ -56,13 +56,13 @@ class LockBytes:
|
|
56
56
|
return len(data)
|
57
57
|
|
58
58
|
def Flush(self, whatsthis=0):
|
59
|
-
print("Flush"
|
59
|
+
print("Flush", whatsthis)
|
60
60
|
fname = os.path.join(win32api.GetTempPath(), "persist.doc")
|
61
61
|
open(fname, "wb").write(self.data)
|
62
62
|
return S_OK
|
63
63
|
|
64
64
|
def SetSize(self, size):
|
65
|
-
print("Set Size"
|
65
|
+
print("Set Size", size)
|
66
66
|
if size > len(self.data):
|
67
67
|
self.data += b"\000" * (size - len(self.data))
|
68
68
|
else:
|
@@ -76,7 +76,7 @@ class LockBytes:
|
|
76
76
|
print("UnlockRegion")
|
77
77
|
|
78
78
|
def Stat(self, statflag):
|
79
|
-
print("returning Stat
|
79
|
+
print("returning Stat", statflag)
|
80
80
|
return (
|
81
81
|
"PyMemBytes",
|
82
82
|
storagecon.STGTY_LOCKBYTES,
|
@@ -121,7 +121,7 @@ class OleClientSite:
|
|
121
121
|
return S_OK
|
122
122
|
|
123
123
|
def GetMoniker(self, dwAssign, dwWhichMoniker):
|
124
|
-
print("GetMoniker
|
124
|
+
print("GetMoniker", dwAssign, dwWhichMoniker)
|
125
125
|
|
126
126
|
def GetContainer(self):
|
127
127
|
print("GetContainer")
|
@@ -130,7 +130,7 @@ class OleClientSite:
|
|
130
130
|
print("ShowObject")
|
131
131
|
|
132
132
|
def OnShowWindow(self, fShow):
|
133
|
-
print("ShowObject"
|
133
|
+
print("ShowObject", fShow)
|
134
134
|
|
135
135
|
def RequestNewObjectLayout(self):
|
136
136
|
print("RequestNewObjectLayout")
|
@@ -51,9 +51,8 @@ class PippoTester(unittest.TestCase):
|
|
51
51
|
self._testArray(numpy.array([-3.14, -2, -0.1, 0.0, 1.1, 2.5, 3]))
|
52
52
|
|
53
53
|
def testByteArrays(self):
|
54
|
-
|
55
|
-
|
56
|
-
self._testArray(bytearray(b"abcdef"))
|
54
|
+
self._testArray(b"abcdef")
|
55
|
+
self._testArray(bytearray(b"abcdef"))
|
57
56
|
|
58
57
|
def _testArray(self, inArray):
|
59
58
|
outArray = self.object.Method3(inArray)
|
@@ -11,18 +11,24 @@ import time
|
|
11
11
|
|
12
12
|
import pythoncom
|
13
13
|
import pywintypes
|
14
|
-
import win32api
|
15
14
|
import win32com
|
16
15
|
import win32com.client.connect
|
16
|
+
import win32com.test.util
|
17
17
|
import win32timezone
|
18
18
|
import winerror
|
19
|
-
from win32com.client import
|
20
|
-
|
19
|
+
from win32com.client import (
|
20
|
+
VARIANT,
|
21
|
+
CastTo,
|
22
|
+
DispatchBaseClass,
|
23
|
+
Record,
|
24
|
+
constants,
|
25
|
+
register_record_class,
|
26
|
+
)
|
21
27
|
|
22
28
|
importMsg = "**** PyCOMTest is not installed ***\n PyCOMTest is a Python test specific COM client and server.\n It is likely this server is not installed on this machine\n To install the server, you must get the win32com sources\n and build it using MS Visual C++"
|
23
29
|
|
24
30
|
# This test uses a Python implemented COM server - ensure correctly registered.
|
25
|
-
RegisterPythonServer(
|
31
|
+
win32com.test.util.RegisterPythonServer(
|
26
32
|
os.path.join(os.path.dirname(__file__), "..", "servers", "test_pycomtest.py"),
|
27
33
|
"Python.Test.PyCOMTest",
|
28
34
|
)
|
@@ -45,6 +51,46 @@ universal.RegisterInterfaces("{6BCDCB60-5605-11D0-AE5F-CADD4C000000}", 0, 1, 1)
|
|
45
51
|
verbose = 0
|
46
52
|
|
47
53
|
|
54
|
+
# Subclasses of pythoncom.com_record.
|
55
|
+
# Registration is performed in 'TestGenerated'.
|
56
|
+
class TestStruct1(pythoncom.com_record):
|
57
|
+
__slots__ = ()
|
58
|
+
TLBID = "{6BCDCB60-5605-11D0-AE5F-CADD4C000000}"
|
59
|
+
MJVER = 1
|
60
|
+
MNVER = 1
|
61
|
+
LCID = 0
|
62
|
+
GUID = "{7A4CE6A7-7959-4E85-A3C0-B41442FF0F67}"
|
63
|
+
|
64
|
+
|
65
|
+
class TestStruct2(pythoncom.com_record):
|
66
|
+
__slots__ = ()
|
67
|
+
TLBID = "{6BCDCB60-5605-11D0-AE5F-CADD4C000000}"
|
68
|
+
MJVER = 1
|
69
|
+
MNVER = 1
|
70
|
+
LCID = 0
|
71
|
+
GUID = "{78F0EA07-B7CF-42EA-A251-A4C6269F76AF}"
|
72
|
+
|
73
|
+
|
74
|
+
# We don't need to stick with the struct name in the TypeLibrry for the subclass name.
|
75
|
+
# The following class has the same GUID as TestStruct2 from the TypeLibrary.
|
76
|
+
class ArrayOfStructsTestStruct(pythoncom.com_record):
|
77
|
+
__slots__ = ()
|
78
|
+
TLBID = "{6BCDCB60-5605-11D0-AE5F-CADD4C000000}"
|
79
|
+
MJVER = 1
|
80
|
+
MNVER = 1
|
81
|
+
LCID = 0
|
82
|
+
GUID = "{78F0EA07-B7CF-42EA-A251-A4C6269F76AF}"
|
83
|
+
|
84
|
+
|
85
|
+
class NotInTypeLibraryTestStruct(pythoncom.com_record):
|
86
|
+
__slots__ = ()
|
87
|
+
TLBID = "{6BCDCB60-5605-11D0-AE5F-CADD4C000000}"
|
88
|
+
MJVER = 1
|
89
|
+
MNVER = 1
|
90
|
+
LCID = 0
|
91
|
+
GUID = "{79BB6AC3-12DE-4AC5-88AC-225C29A58043}"
|
92
|
+
|
93
|
+
|
48
94
|
def check_get_set(func, arg):
|
49
95
|
got = func(arg)
|
50
96
|
assert got == arg, f"{func} failed - expected {arg!r}, got {got!r}"
|
@@ -250,9 +296,9 @@ def TestCommon(o, is_generated):
|
|
250
296
|
), f"Property value wrong - got {o.ULongProp} (expected {check})"
|
251
297
|
TestApplyResult(o.Test, ("Unused", 99), 1) # A bool function
|
252
298
|
TestApplyResult(o.Test, ("Unused", -1), 1) # A bool function
|
253
|
-
TestApplyResult(o.Test, ("Unused",
|
299
|
+
TestApplyResult(o.Test, ("Unused", True), 1) # A bool function
|
254
300
|
TestApplyResult(o.Test, ("Unused", 0), 0)
|
255
|
-
TestApplyResult(o.Test, ("Unused",
|
301
|
+
TestApplyResult(o.Test, ("Unused", False), 0)
|
256
302
|
|
257
303
|
assert o.DoubleString("foo") == "foofoo"
|
258
304
|
|
@@ -397,6 +443,44 @@ def TestDynamic():
|
|
397
443
|
# assert o.ParamProp(0) == 1, o.paramProp(0)
|
398
444
|
|
399
445
|
|
446
|
+
def TestStructByref(o, r):
|
447
|
+
progress("Checking struct byref as [ in, out ] parameter")
|
448
|
+
mod_r = o.ModifyStruct(r)
|
449
|
+
# If 'TestStruct1' was registered as an instantiable subclass
|
450
|
+
# of pythoncom.com_record, the return value should have this type.
|
451
|
+
if isinstance(r, TestStruct1):
|
452
|
+
assert type(mod_r) is TestStruct1
|
453
|
+
else:
|
454
|
+
assert type(mod_r) is pythoncom.com_record
|
455
|
+
# We expect the input value to stay unchanged
|
456
|
+
assert r.int_value == 99 and str(r.str_value) == "Hello from C++"
|
457
|
+
# and the return value to reflect the modifications performed on the COM server side
|
458
|
+
assert (
|
459
|
+
mod_r.int_value == 100
|
460
|
+
and str(mod_r.str_value) == "Nothing is as constant as change"
|
461
|
+
)
|
462
|
+
|
463
|
+
|
464
|
+
def TestArrayOfStructs(o, test_rec):
|
465
|
+
progress("Testing struct with SAFEARRAY(VT_RECORD) fields.")
|
466
|
+
rec_list = []
|
467
|
+
for i in range(3):
|
468
|
+
# If 'ArrayOfStructsTestStruct' and 'TestStruct1' were registered as instantiable
|
469
|
+
# subclasses of pythoncom.com_record, we expect to work with these types.
|
470
|
+
if isinstance(test_rec, ArrayOfStructsTestStruct):
|
471
|
+
rec = TestStruct1()
|
472
|
+
assert type(rec) is TestStruct1
|
473
|
+
else:
|
474
|
+
rec = Record("TestStruct1", o)
|
475
|
+
assert type(rec) is pythoncom.com_record
|
476
|
+
rec.str_value = "This is record number"
|
477
|
+
rec.int_value = i + 1
|
478
|
+
rec_list.append(rec)
|
479
|
+
test_rec.array_of_records = rec_list
|
480
|
+
test_rec.rec_count = i + 1
|
481
|
+
assert o.VerifyArrayOfStructs(test_rec)
|
482
|
+
|
483
|
+
|
400
484
|
def TestGenerated():
|
401
485
|
# Create an instance of the server.
|
402
486
|
from win32com.client.gencache import EnsureDispatch
|
@@ -421,6 +505,58 @@ def TestGenerated():
|
|
421
505
|
coclass = GetClass("{B88DD310-BAE8-11D0-AE86-76F2C1000000}")()
|
422
506
|
TestCounter(coclass, True)
|
423
507
|
|
508
|
+
# Test plain pythoncom.com_record structs.
|
509
|
+
progress("Testing baseclass pythoncom.com_record structs.")
|
510
|
+
r = o.GetStruct()
|
511
|
+
assert type(r) is pythoncom.com_record
|
512
|
+
TestStructByref(o, r)
|
513
|
+
test_rec = Record("TestStruct2", o)
|
514
|
+
assert type(test_rec) is pythoncom.com_record
|
515
|
+
TestArrayOfStructs(o, test_rec)
|
516
|
+
|
517
|
+
progress("Testing registration of pythoncom.com_record subclasses.")
|
518
|
+
# Instantiating a pythoncom.com_record subclass, which has proper GUID attributes,
|
519
|
+
# does raise a TypeError, as long as we have not registered it.
|
520
|
+
try:
|
521
|
+
r_sub = TestStruct1()
|
522
|
+
except TypeError:
|
523
|
+
pass
|
524
|
+
except Exception as e:
|
525
|
+
raise AssertionError from e
|
526
|
+
else:
|
527
|
+
raise AssertionError
|
528
|
+
# Register the subclasses in pythoncom.
|
529
|
+
register_record_class(TestStruct1)
|
530
|
+
register_record_class(ArrayOfStructsTestStruct)
|
531
|
+
# Now the type of the instance is the registered subclass.
|
532
|
+
r_sub = TestStruct1()
|
533
|
+
assert type(r_sub) is TestStruct1
|
534
|
+
# Now also the 'Record' factory function returns an instance of the registered subtype.
|
535
|
+
r_sub = Record("TestStruct1", o)
|
536
|
+
assert type(r_sub) is TestStruct1
|
537
|
+
# It should not be possible to register multiple classes with the same GUID, e.g.
|
538
|
+
# 'TestStruct2' has the same GUID class attribute value as 'ArrayOfStructsTestStruct'.
|
539
|
+
check_get_set_raises(ValueError, register_record_class, TestStruct2)
|
540
|
+
# Also registering a class with a GUID that is not in the TypeLibrary should fail.
|
541
|
+
check_get_set_raises(TypeError, register_record_class, NotInTypeLibraryTestStruct)
|
542
|
+
|
543
|
+
# Perform the 'Byref' and 'ArrayOfStruct tests using the registered subclasses.
|
544
|
+
progress("Testing subclasses of pythoncom.com_record.")
|
545
|
+
r = o.GetStruct()
|
546
|
+
# After 'TestStruct1' was registered as an instantiable subclass
|
547
|
+
# of pythoncom.com_record, the return value should have this type.
|
548
|
+
assert type(r) is TestStruct1
|
549
|
+
TestStructByref(o, r)
|
550
|
+
test_rec = ArrayOfStructsTestStruct()
|
551
|
+
assert type(test_rec) is ArrayOfStructsTestStruct
|
552
|
+
TestArrayOfStructs(o, test_rec)
|
553
|
+
|
554
|
+
# Test initialization of registered pythoncom.com_record subclasses.
|
555
|
+
progress("Testing initialization of pythoncom.com_record subclasses.")
|
556
|
+
buf = o.GetStruct().__reduce__()[1][5]
|
557
|
+
test_rec = TestStruct1(buf)
|
558
|
+
assert test_rec.int_value == 99 and str(test_rec.str_value) == "Hello from C++"
|
559
|
+
|
424
560
|
# XXX - this is failing in dynamic tests, but should work fine.
|
425
561
|
i1, i2 = o.GetMultipleInterfaces()
|
426
562
|
# Yay - is now an instance returned!
|
@@ -583,7 +719,7 @@ def TestPyVariant(o, is_generated):
|
|
583
719
|
|
584
720
|
def TestCounter(counter, bIsGenerated):
|
585
721
|
# Test random access into container
|
586
|
-
progress("Testing counter
|
722
|
+
progress(f"Testing counter {counter!r}")
|
587
723
|
import random
|
588
724
|
|
589
725
|
for i in range(50):
|
@@ -16,9 +16,8 @@ class InterpCase(win32com.test.util.TestCase):
|
|
16
16
|
def setUp(self):
|
17
17
|
# Ensure the correct version registered.
|
18
18
|
from win32com.servers import interp
|
19
|
-
from win32com.test.util import RegisterPythonServer
|
20
19
|
|
21
|
-
RegisterPythonServer(interp.__file__, "Python.Interpreter")
|
20
|
+
win32com.test.util.RegisterPythonServer(interp.__file__, "Python.Interpreter")
|
22
21
|
|
23
22
|
def _testInterp(self, interp):
|
24
23
|
self.assertEqual(interp.Eval("1+1"), 2)
|
@@ -23,14 +23,13 @@ win32com.__path__[0] = win32com_src_dir
|
|
23
23
|
|
24
24
|
import pythoncom
|
25
25
|
import win32com.client
|
26
|
+
from pywin32_testutil import TestLoader, TestRunner
|
26
27
|
from win32com.test.util import (
|
27
28
|
CapturingFunctionTestCase,
|
28
29
|
CheckClean,
|
29
30
|
RegisterPythonServer,
|
30
31
|
ShellTestCase,
|
31
32
|
TestCase,
|
32
|
-
TestLoader,
|
33
|
-
TestRunner,
|
34
33
|
)
|
35
34
|
|
36
35
|
verbosity = 1 # default unittest verbosity.
|
@@ -4,7 +4,6 @@ import sys
|
|
4
4
|
import traceback
|
5
5
|
|
6
6
|
import pythoncom
|
7
|
-
import win32api
|
8
7
|
import win32com.test.util
|
9
8
|
import winerror
|
10
9
|
from win32com.client import gencache, makepy, selecttlb
|
@@ -40,7 +39,7 @@ def TestBuildAll(verbose=1):
|
|
40
39
|
# interface manually
|
41
40
|
tinfo = (info.clsid, info.lcid, info.major, info.minor)
|
42
41
|
mod = gencache.EnsureModule(info.clsid, info.lcid, info.major, info.minor)
|
43
|
-
for name in mod.NamesToIIDMap
|
42
|
+
for name in mod.NamesToIIDMap:
|
44
43
|
makepy.GenerateChildFromTypeLibSpec(name, tinfo)
|
45
44
|
return num
|
46
45
|
|
@@ -95,10 +95,13 @@ def TestVB(vbtest, bUseGenerated):
|
|
95
95
|
vbtest.VariantProperty == "Hello from Python"
|
96
96
|
), "Could not set the variant string property correctly."
|
97
97
|
vbtest.VariantProperty = (1.0, 2.0, 3.0)
|
98
|
-
assert
|
99
|
-
|
100
|
-
|
101
|
-
|
98
|
+
assert (
|
99
|
+
vbtest.VariantProperty
|
100
|
+
== (
|
101
|
+
1.0,
|
102
|
+
2.0,
|
103
|
+
3.0,
|
104
|
+
)
|
102
105
|
), f"Could not set the variant property to an array of floats correctly - '{vbtest.VariantProperty}'."
|
103
106
|
|
104
107
|
TestArrays(vbtest, bUseGenerated)
|
@@ -195,8 +198,8 @@ def _DoTestCollection(vbtest, col_name, expected):
|
|
195
198
|
check = []
|
196
199
|
for item in i:
|
197
200
|
check.append(item)
|
198
|
-
assert
|
199
|
-
expected
|
201
|
+
assert (
|
202
|
+
check == list(expected)
|
200
203
|
), f"Collection iterator {col_name} didn't have {expected!r} 2nd time around (had {check!r})"
|
201
204
|
# but an iterator is not restartable
|
202
205
|
check = []
|
@@ -484,9 +487,10 @@ def TestStructs(vbtest):
|
|
484
487
|
s.sub_val,
|
485
488
|
)
|
486
489
|
)
|
487
|
-
|
490
|
+
repr_s = repr(s)
|
491
|
+
if repr_s != expected:
|
488
492
|
print("Expected repr:", expected)
|
489
|
-
print("Actual repr :",
|
493
|
+
print("Actual repr :", repr_s)
|
490
494
|
raise AssertionError("repr() of record object failed")
|
491
495
|
|
492
496
|
print("Struct/Record tests passed")
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import gc
|
2
1
|
import logging
|
3
2
|
import os
|
4
3
|
import sys
|
@@ -13,7 +12,6 @@ import win32api
|
|
13
12
|
import win32com
|
14
13
|
import winerror
|
15
14
|
from pythoncom import _GetGatewayCount, _GetInterfaceCount
|
16
|
-
from pywin32_testutil import LeakTestCase, TestLoader, TestResult, TestRunner
|
17
15
|
|
18
16
|
|
19
17
|
def CheckClean():
|
@@ -213,7 +211,7 @@ TestCase = unittest.TestCase
|
|
213
211
|
|
214
212
|
def CapturingFunctionTestCase(*args, **kw):
|
215
213
|
real_test = _CapturingFunctionTestCase(*args, **kw)
|
216
|
-
return LeakTestCase(real_test)
|
214
|
+
return pywin32_testutil.LeakTestCase(real_test)
|
217
215
|
|
218
216
|
|
219
217
|
class _CapturingFunctionTestCase(unittest.FunctionTestCase): # , TestCaseMixin):
|
@@ -58,9 +58,7 @@ def RegisterInterfaces(typelibGUID, lcid, major, minor, interface_names=None):
|
|
58
58
|
ret.append((dispid, invkind, names[0]))
|
59
59
|
else:
|
60
60
|
# Cool - can used cached info.
|
61
|
-
|
62
|
-
interface_names = list(mod.VTablesToClassMap.values())
|
63
|
-
for name in interface_names:
|
61
|
+
for name in interface_names or mod.VTablesToClassMap.values():
|
64
62
|
try:
|
65
63
|
iid = mod.NamesToIIDMap[name]
|
66
64
|
except KeyError:
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import os
|
2
2
|
|
3
|
-
import ntsecuritycon
|
4
3
|
import pythoncom
|
5
4
|
import win32api
|
6
5
|
import win32com.server.policy
|
@@ -12,43 +11,21 @@ from ntsecuritycon import (
|
|
12
11
|
FILE_GENERIC_EXECUTE,
|
13
12
|
FILE_GENERIC_READ,
|
14
13
|
FILE_GENERIC_WRITE,
|
15
|
-
FILE_READ_ATTRIBUTES,
|
16
|
-
FILE_READ_DATA,
|
17
|
-
FILE_READ_EA,
|
18
|
-
FILE_WRITE_ATTRIBUTES,
|
19
14
|
FILE_WRITE_DATA,
|
20
|
-
FILE_WRITE_EA,
|
21
|
-
PSPCB_SI_INITDIALOG,
|
22
15
|
READ_CONTROL,
|
23
|
-
SI_ACCESS_CONTAINER,
|
24
16
|
SI_ACCESS_GENERAL,
|
25
|
-
SI_ACCESS_PROPERTY,
|
26
17
|
SI_ACCESS_SPECIFIC,
|
27
18
|
SI_ADVANCED,
|
28
19
|
SI_CONTAINER,
|
29
20
|
SI_EDIT_ALL,
|
30
|
-
SI_EDIT_AUDITS,
|
31
|
-
SI_EDIT_PROPERTIES,
|
32
|
-
SI_PAGE_ADVPERM,
|
33
|
-
SI_PAGE_AUDIT,
|
34
|
-
SI_PAGE_OWNER,
|
35
|
-
SI_PAGE_PERM,
|
36
21
|
SI_PAGE_TITLE,
|
37
22
|
SI_RESET,
|
38
|
-
STANDARD_RIGHTS_EXECUTE,
|
39
|
-
STANDARD_RIGHTS_READ,
|
40
|
-
STANDARD_RIGHTS_WRITE,
|
41
|
-
SYNCHRONIZE,
|
42
23
|
WRITE_DAC,
|
43
24
|
WRITE_OWNER,
|
44
25
|
)
|
45
26
|
from pythoncom import IID_NULL
|
46
27
|
from win32com.authorization import authorization
|
47
|
-
from
|
48
|
-
PSPCB_CREATE,
|
49
|
-
PSPCB_RELEASE,
|
50
|
-
)
|
51
|
-
from win32security import CONTAINER_INHERIT_ACE, INHERIT_ONLY_ACE, OBJECT_INHERIT_ACE
|
28
|
+
from win32security import CONTAINER_INHERIT_ACE, OBJECT_INHERIT_ACE
|
52
29
|
|
53
30
|
|
54
31
|
class SecurityInformation(win32com.server.policy.DesignatedWrapPolicy):
|
py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py
CHANGED
@@ -6,9 +6,7 @@ or as a remote service of the form \\machinename\service
|
|
6
6
|
|
7
7
|
import os
|
8
8
|
|
9
|
-
import ntsecuritycon
|
10
9
|
import pythoncom
|
11
|
-
import win32api
|
12
10
|
import win32com.server.policy
|
13
11
|
import win32con
|
14
12
|
import win32security
|
@@ -30,35 +28,17 @@ SERVICE_GENERIC_READ = (
|
|
30
28
|
SERVICE_GENERIC_WRITE = win32service.SERVICE_CHANGE_CONFIG
|
31
29
|
|
32
30
|
from ntsecuritycon import (
|
33
|
-
PSPCB_SI_INITDIALOG,
|
34
31
|
READ_CONTROL,
|
35
|
-
SI_ACCESS_CONTAINER,
|
36
32
|
SI_ACCESS_GENERAL,
|
37
|
-
SI_ACCESS_PROPERTY,
|
38
33
|
SI_ACCESS_SPECIFIC,
|
39
34
|
SI_ADVANCED,
|
40
|
-
SI_CONTAINER,
|
41
35
|
SI_EDIT_ALL,
|
42
|
-
SI_EDIT_AUDITS,
|
43
|
-
SI_EDIT_PROPERTIES,
|
44
|
-
SI_PAGE_ADVPERM,
|
45
|
-
SI_PAGE_AUDIT,
|
46
|
-
SI_PAGE_OWNER,
|
47
|
-
SI_PAGE_PERM,
|
48
36
|
SI_PAGE_TITLE,
|
49
37
|
SI_RESET,
|
50
|
-
STANDARD_RIGHTS_EXECUTE,
|
51
|
-
STANDARD_RIGHTS_READ,
|
52
|
-
STANDARD_RIGHTS_WRITE,
|
53
38
|
WRITE_DAC,
|
54
39
|
WRITE_OWNER,
|
55
40
|
)
|
56
41
|
from pythoncom import IID_NULL
|
57
|
-
from win32com.shell.shellcon import ( # # Msg parameter to PropertySheetPageCallback
|
58
|
-
PSPCB_CREATE,
|
59
|
-
PSPCB_RELEASE,
|
60
|
-
)
|
61
|
-
from win32security import CONTAINER_INHERIT_ACE, INHERIT_ONLY_ACE, OBJECT_INHERIT_ACE
|
62
42
|
|
63
43
|
|
64
44
|
class ServiceSecurity(win32com.server.policy.DesignatedWrapPolicy):
|