py2docfx 0.1.15.dev2025736__py3-none-any.whl → 0.1.15.dev2038852__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/docfx_yaml/process_doctree.py +34 -21
- py2docfx/docfx_yaml/tests/test_method_arguments.py +7 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_core_metadata.py +21 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/__init__.py +27 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/util.py +7 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_normalization.py +29 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +48 -11
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/dist.py +115 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/msvc.py +12 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/any_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/api_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/compiler/plugin_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_database.py +22 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_pb2.py +82 -35
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/duration_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/empty_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/field_mask_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/builder.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/containers.py +13 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/decoder.py +62 -115
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_edition_defaults.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_message.py +15 -18
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/testing_refleaks.py +4 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/type_checkers.py +5 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/well_known_types.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/json_format.py +25 -9
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message.py +26 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message_factory.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto.py +38 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto_text.py +129 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/reflection.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/runtime_version.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/source_context_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/struct_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/symbol_database.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/text_format.py +8 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/timestamp_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/type_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/unknown_fields.py +3 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/wrappers_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/msal/application.py +51 -17
- py2docfx/venv/venv1/Lib/site-packages/msal/broker.py +18 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/cloudshell.py +5 -1
- py2docfx/venv/venv1/Lib/site-packages/msal/managed_identity.py +5 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/sku.py +6 -0
- py2docfx/venv/venv1/Lib/site-packages/msal/token_cache.py +31 -10
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/__init__.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/cache_lock.py +4 -1
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/filelock.py +62 -0
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/libsecret.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/token_cache.py +7 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_core_metadata.py +21 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/__init__.py +27 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/util.py +7 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_normalization.py +29 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +48 -11
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/dist.py +115 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/msvc.py +12 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
- {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/METADATA +1 -1
- {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/RECORD +136 -593
- py2docfx/docfx_yaml/tests/test_process_doctree.py +0 -120
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/__init__.py +0 -82
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/ado_consts.py +0 -283
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/adodbapi.py +0 -1153
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/apibase.py +0 -723
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_print.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_table_names.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_read.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_write.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/is64bit.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/process_connect_string.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/schema_table.py +0 -16
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/setup.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitest.py +0 -1547
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitestconfig.py +0 -184
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/dbapi20.py +0 -879
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/is64bit.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/setuptestframework.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/test_adodbapi_dbapi20.py +0 -195
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/tryconnection.py +0 -30
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/_parameterized.py +0 -420
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/service.py +0 -213
- py2docfx/venv/venv1/Lib/site-packages/isapi/__init__.py +0 -39
- py2docfx/venv/venv1/Lib/site-packages/isapi/install.py +0 -809
- py2docfx/venv/venv1/Lib/site-packages/isapi/isapicon.py +0 -121
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/advanced.py +0 -218
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector.py +0 -116
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_asynch.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_with_filter.py +0 -162
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/test.py +0 -195
- py2docfx/venv/venv1/Lib/site-packages/isapi/simple.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/isapi/test/extension_simple.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/isapi/threaded_extension.py +0 -191
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__about__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__init__.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__main__.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/portalocker/constants.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/portalocker/exceptions.py +0 -27
- py2docfx/venv/venv1/Lib/site-packages/portalocker/portalocker.py +0 -154
- py2docfx/venv/venv1/Lib/site-packages/portalocker/redis.py +0 -236
- py2docfx/venv/venv1/Lib/site-packages/portalocker/utils.py +0 -569
- py2docfx/venv/venv1/Lib/site-packages/pythoncom.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/basictimerapp.py +0 -258
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/customprint.py +0 -183
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/demoutils.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dlgappdemo.py +0 -51
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dojobapp.py +0 -71
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/helloapp.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/cmdserver.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/createwin.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/demoutils.py +0 -65
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dibdemo.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dlgtest.py +0 -145
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dyndlg.py +0 -104
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/fontdemo.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/guidemo.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/hiertest.py +0 -138
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/menutest.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/objdoc.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/demoutils.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/flash.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/msoffice.py +0 -159
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxserialtest.py +0 -132
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxtest.py +0 -243
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/webbrowser.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/openGLDemo.py +0 -415
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/progressbar.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/sliderdemo.py +0 -76
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/splittst.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/threadedgui.py +0 -189
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/toolbar.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/__init__.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/__init__.py +0 -133
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/configui.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgcon.py +0 -31
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgpyapp.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/debugger.py +0 -1097
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/fail.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/ideoptions.py +0 -136
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/list.py +0 -146
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/login.py +0 -155
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/status.py +0 -242
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/DockingBar.py +0 -676
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/app.py +0 -411
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/bitmap.py +0 -168
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/cmdline.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dbgcommands.py +0 -188
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dlgappcore.py +0 -76
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/ModuleBrowser.py +0 -235
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/__init__.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/coloreditor.py +0 -646
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/configui.py +0 -299
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/document.py +0 -379
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/editor.py +0 -511
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/frame.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/template.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/vss.py +0 -104
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/help.py +0 -173
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/interact.py +0 -995
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpyapp.py +0 -552
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpydde.py +0 -65
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/scriptutils.py +0 -684
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/sgrepmdi.py +0 -749
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/startup.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/stdin.py +0 -172
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/toolmenu.py +0 -279
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/window.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/winout.py +0 -589
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoExpand.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoIndent.py +0 -536
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/CallTips.py +0 -216
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/FormatParagraph.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/IdleHistory.py +0 -87
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/PyParse.py +0 -585
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/activex.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/afxres.py +0 -501
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/dialog.py +0 -277
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/docview.py +0 -151
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/object.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/thread.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/window.py +0 -50
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/IDLEenvironment.py +0 -593
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/bindings.py +0 -180
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/config.py +0 -363
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/configui.py +0 -291
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/control.py +0 -565
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/document.py +0 -312
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/find.py +0 -511
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/formatter.py +0 -704
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/keycodes.py +0 -190
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/scintillacon.py +0 -3083
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/view.py +0 -841
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/TraceCollector.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browseProjects.py +0 -323
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browser.py +0 -494
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/hierlist.py +0 -353
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regedit.py +0 -382
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regpy.py +0 -80
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupRead_BackupWrite.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupSeek_streamheaders.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CopyFileEx.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CreateFileTransacted_MiniVersion.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtFormatMessage.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_pull.py +0 -28
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_push.py +0 -32
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/FileSecurityTest.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/GetSaveFileName.py +0 -43
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/NetValidatePasswordPolicy.py +0 -127
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/OpenEncryptedFileRaw.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegCreateKeyTransacted.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegRestoreKey.py +0 -71
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/SystemParametersInfo.py +0 -210
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/c_extension/setup.py +0 -26
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeclient.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeserver.py +0 -42
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/desktopmanager.py +0 -246
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/eventLogDemo.py +0 -143
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/getfilever.py +0 -33
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/mmapfile_demo.py +0 -101
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/cat.py +0 -17
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/runproc.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/print_desktop.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/rastest.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/GetTokenInformation.py +0 -110
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/account_rights.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/explicit_entries.py +0 -170
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/get_policy_info.py +0 -39
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/list_rights.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/localized_names.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsaregevent.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsastore.py +0 -12
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/query_information.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsave_sa.py +0 -61
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsecurity.py +0 -36
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sa_inherit.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/security_enums.py +0 -336
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_audit.py +0 -106
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_owner.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_policy_info.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setkernelobjectsecurity.py +0 -134
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setnamedsecurityinfo.py +0 -131
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setsecurityinfo.py +0 -131
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setuserobjectsecurity.py +0 -102
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/fetch_url.py +0 -158
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/simple_auth.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/socket_server.py +0 -199
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/validate_password.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/nativePipeTestService.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestService.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestServiceClient.py +0 -158
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/serviceEvents.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/timer_demo.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboardDemo.py +0 -155
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboard_bitmapdemo.py +0 -117
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32comport_demo.py +0 -174
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32console_demo.py +0 -132
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32cred_demo.py +0 -82
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32fileDemo.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_demo.py +0 -177
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_devicenotify.py +0 -106
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_dialog.py +0 -445
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_menu.py +0 -464
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_taskbar.py +0 -136
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32netdemo.py +0 -272
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32rcparser_demo.py +0 -86
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32servicedemo.py +0 -23
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32ts_logoff_disconnected.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/testwnet.py +0 -123
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/winnetwk.py +0 -100
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/winprocess.py +0 -230
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/_win32verstamp_pywin32ctypes.py +0 -164
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/afxres.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/commctrl.py +0 -1551
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/mmsystem.py +0 -956
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/netbios.py +0 -293
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/ntsecuritycon.py +0 -731
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_bootstrap.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_testutil.py +0 -291
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywintypes.py +0 -124
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/rasutil.py +0 -40
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/regcheck.py +0 -161
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/regutil.py +0 -395
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspi.py +0 -413
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspicon.py +0 -477
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win2kras.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32con.py +0 -5064
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32cryptcon.py +0 -1922
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32evtlogutil.py +0 -225
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32gui_struct.py +0 -957
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32inetcon.py +0 -1086
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32netcon.py +0 -627
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhquery.py +0 -570
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhutil.py +0 -212
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32rcparser.py +0 -674
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32serviceutil.py +0 -1073
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32timezone.py +0 -1201
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32traceutil.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32verstamp.py +0 -235
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winerror.py +0 -7362
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winioctlcon.py +0 -1079
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winnt.py +0 -1347
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winperf.py +0 -236
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winxptheme.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/ControlService.py +0 -594
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/BrandProject.py +0 -97
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/bulkstamp.py +0 -156
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/vssutil.py +0 -201
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/backupEventLog.py +0 -46
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/h2py.py +0 -194
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/killProcName.py +0 -62
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_postinstall.py +0 -733
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_testall.py +0 -120
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/rasutil.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/regsetup.py +0 -607
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/setup_d.py +0 -111
- py2docfx/venv/venv1/Lib/site-packages/win32/test/handles.py +0 -175
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_clipboard.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_exceptions.py +0 -213
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_odbc.py +0 -264
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_pywintypes.py +0 -111
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_security.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_sspi.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32api.py +0 -273
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32clipboard.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32cred.py +0 -91
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32crypt.py +0 -144
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32event.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32file.py +0 -1096
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32gui.py +0 -227
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32guistruct.py +0 -333
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32inet.py +0 -108
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32net.py +0 -23
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32pipe.py +0 -148
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32print.py +0 -24
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32profile.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32rcparser.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32timezone.py +0 -16
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32trace.py +0 -366
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32ts.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32wnet.py +0 -174
- py2docfx/venv/venv1/Lib/site-packages/win32/test/testall.py +0 -223
- py2docfx/venv/venv1/Lib/site-packages/win32/winxpgui.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/win32com/__init__.py +0 -134
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/CLSIDToClass.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/__init__.py +0 -717
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/build.py +0 -771
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/combrowse.py +0 -604
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/connect.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/dynamic.py +0 -699
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/gencache.py +0 -825
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/genpy.py +0 -1350
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/makepy.py +0 -453
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/selecttlb.py +0 -182
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/tlbrowse.py +0 -277
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/util.py +0 -103
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/connect.py +0 -96
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/dump_clipboard.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsApartmentThreaded.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsFreeThreaded.py +0 -92
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelAddin.py +0 -169
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelRTDServer.py +0 -434
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/iebutton.py +0 -214
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/ietoolbar.py +0 -368
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/outlookAddin.py +0 -135
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/trybag.py +0 -78
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegw.py +0 -618
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwenum.py +0 -331
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwparse.py +0 -1017
- py2docfx/venv/venv1/Lib/site-packages/win32com/olectl.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/connect.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/dispatcher.py +0 -239
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/exception.py +0 -99
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/factory.py +0 -26
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/localserver.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/policy.py +0 -803
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/register.py +0 -677
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/util.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/PythonTools.py +0 -47
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/dictionary.py +0 -133
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/interp.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/perfmon.py +0 -36
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/test_pycomtest.py +0 -181
- py2docfx/venv/venv1/Lib/site-packages/win32com/storagecon.py +0 -142
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/GenTestScripts.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/daodump.py +0 -88
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/errorSemantics.py +0 -243
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/pippo_server.py +0 -96
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/policySemantics.py +0 -115
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testADOEvents.py +0 -100
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAXScript.py +0 -44
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAccess.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testArrays.py +0 -99
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testClipboard.py +0 -169
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testCollections.py +0 -159
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testConversionErrors.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDCOM.py +0 -50
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDates.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDictionary.py +0 -101
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDynamic.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExchange.py +0 -121
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExplorer.py +0 -139
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGIT.py +0 -142
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGatewayAddresses.py +0 -149
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testIterators.py +0 -140
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOffice.py +0 -184
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOfficeEvents.py +0 -138
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMarshal.py +0 -160
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPersist.py +0 -227
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPippo.py +0 -80
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPyComTest.py +0 -918
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testROT.py +0 -29
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testServers.py +0 -51
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testShell.py +0 -272
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStorage.py +0 -88
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStreams.py +0 -147
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testWMI.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testall.py +0 -320
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testmakepy.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvb.py +0 -583
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvbscript_regexp.py +0 -40
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testxslt.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/util.py +0 -262
- py2docfx/venv/venv1/Lib/site-packages/win32com/universal.py +0 -224
- py2docfx/venv/venv1/Lib/site-packages/win32com/util.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/__init__.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/adsicon.py +0 -340
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/objectPicker.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/scp.py +0 -565
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/search.py +0 -151
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/test.py +0 -274
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditSecurity.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py +0 -219
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axcontrol/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/adb.py +0 -467
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/codecontainer.py +0 -279
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/contexts.py +0 -58
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/debugger.py +0 -238
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/documents.py +0 -135
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/dump.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/expressions.py +0 -212
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/gateways.py +0 -583
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/stackframe.py +0 -178
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/util.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/asputil.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/debug.py +0 -223
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/error.py +0 -262
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/framework.py +0 -1291
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pydumper.py +0 -78
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript.py +0 -438
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript_rexec.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/scriptdispatch.py +0 -103
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/axsite.py +0 -145
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/leakTest.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost.py +0 -240
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost4Dbg.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/show_all_jobs.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/test_bits.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_record.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_test.py +0 -402
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/demo/filterDemo.py +0 -300
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/ifiltercon.py +0 -110
- py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/inetcon.py +0 -261
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/__init__.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/demos/mapisend.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/emsabtags.py +0 -875
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapitags.py +0 -1023
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapiutil.py +0 -211
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/pscon.py +0 -838
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/test/testpropsys.py +0 -5
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IActiveDesktop.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IFileOperationProgressSink.py +0 -179
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IShellLinkDataList.py +0 -67
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/ITransferAdviseSink.py +0 -93
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IUniformResourceLocator.py +0 -56
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/browse_for_folder.py +0 -45
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/create_link.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/dump_link.py +0 -58
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/explorer_browser.py +0 -143
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/column_provider.py +0 -125
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/context_menu.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/copy_hook.py +0 -84
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/empty_volume_cache.py +0 -188
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/folder_view.py +0 -866
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/icon_handler.py +0 -81
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/shell_view.py +0 -971
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/shellexecuteex.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/viewstate.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/walk_shell_folders.py +0 -24
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/shellcon.py +0 -1615
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testSHFileOperation.py +0 -75
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellFolder.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellItem.py +0 -69
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_1.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_2.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_localsystem.py +0 -3
- py2docfx/venv/venv1/Scripts/pywin32_postinstall.py +0 -733
- py2docfx/venv/venv1/Scripts/pywin32_testall.py +0 -120
- {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/WHEEL +0 -0
- {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/top_level.txt +0 -0
@@ -1,143 +0,0 @@
|
|
1
|
-
# A sample of using Vista's IExplorerBrowser interfaces...
|
2
|
-
# Currently doesn't quite work:
|
3
|
-
# * CPU sits at 100% while running.
|
4
|
-
|
5
|
-
import sys
|
6
|
-
|
7
|
-
import pythoncom
|
8
|
-
import win32api
|
9
|
-
import win32con
|
10
|
-
import win32gui
|
11
|
-
from win32com.server.util import unwrap, wrap
|
12
|
-
from win32com.shell import shell, shellcon
|
13
|
-
|
14
|
-
# event handler for the browser.
|
15
|
-
IExplorerBrowserEvents_Methods = """OnNavigationComplete OnNavigationFailed
|
16
|
-
OnNavigationPending OnViewCreated""".split()
|
17
|
-
|
18
|
-
|
19
|
-
class EventHandler:
|
20
|
-
_com_interfaces_ = [shell.IID_IExplorerBrowserEvents]
|
21
|
-
_public_methods_ = IExplorerBrowserEvents_Methods
|
22
|
-
|
23
|
-
def OnNavigationComplete(self, pidl):
|
24
|
-
print("OnNavComplete", pidl)
|
25
|
-
|
26
|
-
def OnNavigationFailed(self, pidl):
|
27
|
-
print("OnNavigationFailed", pidl)
|
28
|
-
|
29
|
-
def OnNavigationPending(self, pidl):
|
30
|
-
print("OnNavigationPending", pidl)
|
31
|
-
|
32
|
-
def OnViewCreated(self, view):
|
33
|
-
print("OnViewCreated", view)
|
34
|
-
# And if our demo view has been registered, it may well
|
35
|
-
# be that view!
|
36
|
-
try:
|
37
|
-
pyview = unwrap(view)
|
38
|
-
print("and look - it's a Python implemented view!", pyview)
|
39
|
-
except ValueError:
|
40
|
-
pass
|
41
|
-
|
42
|
-
|
43
|
-
class MainWindow:
|
44
|
-
def __init__(self):
|
45
|
-
message_map = {
|
46
|
-
win32con.WM_DESTROY: self.OnDestroy,
|
47
|
-
win32con.WM_COMMAND: self.OnCommand,
|
48
|
-
win32con.WM_SIZE: self.OnSize,
|
49
|
-
}
|
50
|
-
# Register the Window class.
|
51
|
-
wc = win32gui.WNDCLASS()
|
52
|
-
hinst = wc.hInstance = win32api.GetModuleHandle(None)
|
53
|
-
wc.lpszClassName = "test_explorer_browser"
|
54
|
-
wc.lpfnWndProc = message_map # could also specify a wndproc.
|
55
|
-
classAtom = win32gui.RegisterClass(wc)
|
56
|
-
# Create the Window.
|
57
|
-
style = win32con.WS_OVERLAPPEDWINDOW | win32con.WS_VISIBLE
|
58
|
-
self.hwnd = win32gui.CreateWindow(
|
59
|
-
classAtom,
|
60
|
-
"Python IExplorerBrowser demo",
|
61
|
-
style,
|
62
|
-
0,
|
63
|
-
0,
|
64
|
-
win32con.CW_USEDEFAULT,
|
65
|
-
win32con.CW_USEDEFAULT,
|
66
|
-
0,
|
67
|
-
0,
|
68
|
-
hinst,
|
69
|
-
None,
|
70
|
-
)
|
71
|
-
eb = pythoncom.CoCreateInstance(
|
72
|
-
shellcon.CLSID_ExplorerBrowser,
|
73
|
-
None,
|
74
|
-
pythoncom.CLSCTX_ALL,
|
75
|
-
shell.IID_IExplorerBrowser,
|
76
|
-
)
|
77
|
-
# as per MSDN docs, hook up events early
|
78
|
-
self.event_cookie = eb.Advise(wrap(EventHandler()))
|
79
|
-
|
80
|
-
eb.SetOptions(shellcon.EBO_SHOWFRAMES)
|
81
|
-
rect = win32gui.GetClientRect(self.hwnd)
|
82
|
-
# Set the flags such that the folders autoarrange and non web view is presented
|
83
|
-
flags = (shellcon.FVM_LIST, shellcon.FWF_AUTOARRANGE | shellcon.FWF_NOWEBVIEW)
|
84
|
-
eb.Initialize(self.hwnd, rect, (0, shellcon.FVM_DETAILS))
|
85
|
-
if len(sys.argv) == 2:
|
86
|
-
# If an arg was specified, ask the desktop parse it.
|
87
|
-
# You can pass anything explorer accepts as its '/e' argument -
|
88
|
-
# eg, "::{guid}\::{guid}" etc.
|
89
|
-
# "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" is "My Computer"
|
90
|
-
pidl = shell.SHGetDesktopFolder().ParseDisplayName(0, None, sys.argv[1])[1]
|
91
|
-
else:
|
92
|
-
# And start browsing at the root of the namespace.
|
93
|
-
pidl = []
|
94
|
-
eb.BrowseToIDList(pidl, shellcon.SBSP_ABSOLUTE)
|
95
|
-
# and for some reason the "Folder" view in the navigator pane doesn't
|
96
|
-
# magically synchronize itself - so let's do that ourself.
|
97
|
-
# Get the tree control.
|
98
|
-
sp = eb.QueryInterface(pythoncom.IID_IServiceProvider)
|
99
|
-
try:
|
100
|
-
tree = sp.QueryService(
|
101
|
-
shell.IID_INameSpaceTreeControl, shell.IID_INameSpaceTreeControl
|
102
|
-
)
|
103
|
-
except pythoncom.com_error as exc:
|
104
|
-
# this should really only fail if no "nav" frame exists...
|
105
|
-
print(
|
106
|
-
"Strange - failed to get the tree control even though "
|
107
|
-
"we asked for a EBO_SHOWFRAMES"
|
108
|
-
)
|
109
|
-
print(exc)
|
110
|
-
else:
|
111
|
-
# get the IShellItem for the selection.
|
112
|
-
si = shell.SHCreateItemFromIDList(pidl, shell.IID_IShellItem)
|
113
|
-
# set it to selected.
|
114
|
-
tree.SetItemState(si, shellcon.NSTCIS_SELECTED, shellcon.NSTCIS_SELECTED)
|
115
|
-
|
116
|
-
# eb.FillFromObject(None, shellcon.EBF_NODROPTARGET);
|
117
|
-
# eb.SetEmptyText("No known folders yet...");
|
118
|
-
self.eb = eb
|
119
|
-
|
120
|
-
def OnCommand(self, hwnd, msg, wparam, lparam):
|
121
|
-
pass
|
122
|
-
|
123
|
-
def OnDestroy(self, hwnd, msg, wparam, lparam):
|
124
|
-
print("tearing down ExplorerBrowser...")
|
125
|
-
self.eb.Unadvise(self.event_cookie)
|
126
|
-
self.eb.Destroy()
|
127
|
-
self.eb = None
|
128
|
-
print("shutting down app...")
|
129
|
-
win32gui.PostQuitMessage(0)
|
130
|
-
|
131
|
-
def OnSize(self, hwnd, msg, wparam, lparam):
|
132
|
-
x = win32api.LOWORD(lparam)
|
133
|
-
y = win32api.HIWORD(lparam)
|
134
|
-
self.eb.SetRect(None, (0, 0, x, y))
|
135
|
-
|
136
|
-
|
137
|
-
def main():
|
138
|
-
w = MainWindow()
|
139
|
-
win32gui.PumpMessages()
|
140
|
-
|
141
|
-
|
142
|
-
if __name__ == "__main__":
|
143
|
-
main()
|
@@ -1,125 +0,0 @@
|
|
1
|
-
# A sample shell column provider
|
2
|
-
# Mainly ported from MSDN article:
|
3
|
-
# Using Shell Column Handlers for Detailed File Information,
|
4
|
-
# Raymond Chen, Microsoft Corporation, February 2000
|
5
|
-
#
|
6
|
-
# To demostrate:
|
7
|
-
# * Execute this script to register the namespace.
|
8
|
-
# * Open Windows Explorer
|
9
|
-
# * Right-click an explorer column header - select "More"
|
10
|
-
# * Locate column 'pyc size' or 'pyo size', and add it to the view.
|
11
|
-
# This handler is providing that column data.
|
12
|
-
import os
|
13
|
-
import stat
|
14
|
-
|
15
|
-
import commctrl
|
16
|
-
import pythoncom
|
17
|
-
from pywintypes import IID
|
18
|
-
from win32com.shell import shell, shellcon
|
19
|
-
|
20
|
-
IPersist_Methods = ["GetClassID"]
|
21
|
-
IColumnProvider_Methods = IPersist_Methods + [
|
22
|
-
"Initialize",
|
23
|
-
"GetColumnInfo",
|
24
|
-
"GetItemData",
|
25
|
-
]
|
26
|
-
|
27
|
-
|
28
|
-
class ColumnProvider:
|
29
|
-
_reg_progid_ = "Python.ShellExtension.ColumnProvider"
|
30
|
-
_reg_desc_ = "Python Sample Shell Extension (Column Provider)"
|
31
|
-
_reg_clsid_ = IID("{0F14101A-E05E-4070-BD54-83DFA58C3D68}")
|
32
|
-
_com_interfaces_ = [
|
33
|
-
pythoncom.IID_IPersist,
|
34
|
-
shell.IID_IColumnProvider,
|
35
|
-
]
|
36
|
-
_public_methods_ = IColumnProvider_Methods
|
37
|
-
|
38
|
-
# IPersist
|
39
|
-
def GetClassID(self):
|
40
|
-
return self._reg_clsid_
|
41
|
-
|
42
|
-
# IColumnProvider
|
43
|
-
def Initialize(self, colInit):
|
44
|
-
flags, reserved, name = colInit
|
45
|
-
print("ColumnProvider initializing for file", name)
|
46
|
-
|
47
|
-
def GetColumnInfo(self, index):
|
48
|
-
# We support exactly 2 columns - 'pyc size' and 'pyo size'
|
49
|
-
if index in [0, 1]:
|
50
|
-
# As per the MSDN sample, use our CLSID as the fmtid
|
51
|
-
if index == 0:
|
52
|
-
ext = ".pyc"
|
53
|
-
else:
|
54
|
-
ext = ".pyo"
|
55
|
-
title = ext + " size"
|
56
|
-
description = "Size of compiled %s file" % ext
|
57
|
-
col_id = (self._reg_clsid_, index) # fmtid # pid
|
58
|
-
col_info = (
|
59
|
-
col_id, # scid
|
60
|
-
pythoncom.VT_I4, # vt
|
61
|
-
commctrl.LVCFMT_RIGHT, # fmt
|
62
|
-
20, # cChars
|
63
|
-
shellcon.SHCOLSTATE_TYPE_INT
|
64
|
-
| shellcon.SHCOLSTATE_SECONDARYUI, # csFlags
|
65
|
-
title,
|
66
|
-
description,
|
67
|
-
)
|
68
|
-
return col_info
|
69
|
-
return None # Indicate no more columns.
|
70
|
-
|
71
|
-
def GetItemData(self, colid, colData):
|
72
|
-
fmt_id, pid = colid
|
73
|
-
fmt_id == self._reg_clsid_
|
74
|
-
flags, attr, reserved, ext, name = colData
|
75
|
-
if ext.lower() not in [".py", ".pyw"]:
|
76
|
-
return None
|
77
|
-
if pid == 0:
|
78
|
-
ext = ".pyc"
|
79
|
-
else:
|
80
|
-
ext = ".pyo"
|
81
|
-
check_file = os.path.splitext(name)[0] + ext
|
82
|
-
try:
|
83
|
-
st = os.stat(check_file)
|
84
|
-
return st[stat.ST_SIZE]
|
85
|
-
except OSError:
|
86
|
-
# No file
|
87
|
-
return None
|
88
|
-
|
89
|
-
|
90
|
-
def DllRegisterServer():
|
91
|
-
import winreg
|
92
|
-
|
93
|
-
# Special ColumnProvider key
|
94
|
-
key = winreg.CreateKey(
|
95
|
-
winreg.HKEY_CLASSES_ROOT,
|
96
|
-
"Folder\\ShellEx\\ColumnHandlers\\" + str(ColumnProvider._reg_clsid_),
|
97
|
-
)
|
98
|
-
winreg.SetValueEx(key, None, 0, winreg.REG_SZ, ColumnProvider._reg_desc_)
|
99
|
-
print(ColumnProvider._reg_desc_, "registration complete.")
|
100
|
-
|
101
|
-
|
102
|
-
def DllUnregisterServer():
|
103
|
-
import winreg
|
104
|
-
|
105
|
-
try:
|
106
|
-
key = winreg.DeleteKey(
|
107
|
-
winreg.HKEY_CLASSES_ROOT,
|
108
|
-
"Folder\\ShellEx\\ColumnHandlers\\" + str(ColumnProvider._reg_clsid_),
|
109
|
-
)
|
110
|
-
except OSError as details:
|
111
|
-
import errno
|
112
|
-
|
113
|
-
if details.errno != errno.ENOENT:
|
114
|
-
raise
|
115
|
-
print(ColumnProvider._reg_desc_, "unregistration complete.")
|
116
|
-
|
117
|
-
|
118
|
-
if __name__ == "__main__":
|
119
|
-
from win32com.server import register
|
120
|
-
|
121
|
-
register.UseCommandLine(
|
122
|
-
ColumnProvider,
|
123
|
-
finalize_register=DllRegisterServer,
|
124
|
-
finalize_unregister=DllUnregisterServer,
|
125
|
-
)
|
@@ -1,122 +0,0 @@
|
|
1
|
-
# A sample context menu handler.
|
2
|
-
# Adds a 'Hello from Python' menu entry to .py files. When clicked, a
|
3
|
-
# simple message box is displayed.
|
4
|
-
#
|
5
|
-
# To demostrate:
|
6
|
-
# * Execute this script to register the context menu.
|
7
|
-
# * Open Windows Explorer, and browse to a directory with a .py file.
|
8
|
-
# * Right-Click on a .py file - locate and click on 'Hello from Python' on
|
9
|
-
# the context menu.
|
10
|
-
|
11
|
-
import pythoncom
|
12
|
-
import win32con
|
13
|
-
import win32gui
|
14
|
-
from win32com.shell import shell, shellcon
|
15
|
-
|
16
|
-
|
17
|
-
class ShellExtension:
|
18
|
-
_reg_progid_ = "Python.ShellExtension.ContextMenu"
|
19
|
-
_reg_desc_ = "Python Sample Shell Extension (context menu)"
|
20
|
-
_reg_clsid_ = "{CED0336C-C9EE-4a7f-8D7F-C660393C381F}"
|
21
|
-
_com_interfaces_ = [shell.IID_IShellExtInit, shell.IID_IContextMenu]
|
22
|
-
_public_methods_ = shellcon.IContextMenu_Methods + shellcon.IShellExtInit_Methods
|
23
|
-
|
24
|
-
def Initialize(self, folder, dataobj, hkey):
|
25
|
-
print("Init", folder, dataobj, hkey)
|
26
|
-
self.dataobj = dataobj
|
27
|
-
|
28
|
-
def QueryContextMenu(self, hMenu, indexMenu, idCmdFirst, idCmdLast, uFlags):
|
29
|
-
print("QCM", hMenu, indexMenu, idCmdFirst, idCmdLast, uFlags)
|
30
|
-
# Query the items clicked on
|
31
|
-
format_etc = win32con.CF_HDROP, None, 1, -1, pythoncom.TYMED_HGLOBAL
|
32
|
-
sm = self.dataobj.GetData(format_etc)
|
33
|
-
num_files = shell.DragQueryFile(sm.data_handle, -1)
|
34
|
-
if num_files > 1:
|
35
|
-
msg = "&Hello from Python (with %d files selected)" % num_files
|
36
|
-
else:
|
37
|
-
fname = shell.DragQueryFile(sm.data_handle, 0)
|
38
|
-
msg = "&Hello from Python (with '%s' selected)" % fname
|
39
|
-
idCmd = idCmdFirst
|
40
|
-
items = ["First Python content menu item"]
|
41
|
-
if (
|
42
|
-
uFlags & 0x000F
|
43
|
-
) == shellcon.CMF_NORMAL: # Check == here, since CMF_NORMAL=0
|
44
|
-
print("CMF_NORMAL...")
|
45
|
-
items.append(msg)
|
46
|
-
elif uFlags & shellcon.CMF_VERBSONLY:
|
47
|
-
print("CMF_VERBSONLY...")
|
48
|
-
items.append(msg + " - shortcut")
|
49
|
-
elif uFlags & shellcon.CMF_EXPLORE:
|
50
|
-
print("CMF_EXPLORE...")
|
51
|
-
items.append(msg + " - normal file, right-click in Explorer")
|
52
|
-
elif uFlags & shellcon.CMF_DEFAULTONLY:
|
53
|
-
print("CMF_DEFAULTONLY...\r\n")
|
54
|
-
else:
|
55
|
-
print("** unknown flags", uFlags)
|
56
|
-
win32gui.InsertMenu(
|
57
|
-
hMenu, indexMenu, win32con.MF_SEPARATOR | win32con.MF_BYPOSITION, 0, None
|
58
|
-
)
|
59
|
-
indexMenu += 1
|
60
|
-
for item in items:
|
61
|
-
win32gui.InsertMenu(
|
62
|
-
hMenu,
|
63
|
-
indexMenu,
|
64
|
-
win32con.MF_STRING | win32con.MF_BYPOSITION,
|
65
|
-
idCmd,
|
66
|
-
item,
|
67
|
-
)
|
68
|
-
indexMenu += 1
|
69
|
-
idCmd += 1
|
70
|
-
|
71
|
-
win32gui.InsertMenu(
|
72
|
-
hMenu, indexMenu, win32con.MF_SEPARATOR | win32con.MF_BYPOSITION, 0, None
|
73
|
-
)
|
74
|
-
indexMenu += 1
|
75
|
-
return idCmd - idCmdFirst # Must return number of menu items we added.
|
76
|
-
|
77
|
-
def InvokeCommand(self, ci):
|
78
|
-
mask, hwnd, verb, params, dir, nShow, hotkey, hicon = ci
|
79
|
-
win32gui.MessageBox(hwnd, "Hello", "Wow", win32con.MB_OK)
|
80
|
-
|
81
|
-
def GetCommandString(self, cmd, typ):
|
82
|
-
# If GetCommandString returns the same string for all items then
|
83
|
-
# the shell seems to ignore all but one. This is even true in
|
84
|
-
# Win7 etc where there is no status bar (and hence this string seems
|
85
|
-
# ignored)
|
86
|
-
return "Hello from Python (cmd=%d)!!" % (cmd,)
|
87
|
-
|
88
|
-
|
89
|
-
def DllRegisterServer():
|
90
|
-
import winreg
|
91
|
-
|
92
|
-
key = winreg.CreateKey(winreg.HKEY_CLASSES_ROOT, "Python.File\\shellex")
|
93
|
-
subkey = winreg.CreateKey(key, "ContextMenuHandlers")
|
94
|
-
subkey2 = winreg.CreateKey(subkey, "PythonSample")
|
95
|
-
winreg.SetValueEx(subkey2, None, 0, winreg.REG_SZ, ShellExtension._reg_clsid_)
|
96
|
-
print(ShellExtension._reg_desc_, "registration complete.")
|
97
|
-
|
98
|
-
|
99
|
-
def DllUnregisterServer():
|
100
|
-
import winreg
|
101
|
-
|
102
|
-
try:
|
103
|
-
key = winreg.DeleteKey(
|
104
|
-
winreg.HKEY_CLASSES_ROOT,
|
105
|
-
"Python.File\\shellex\\ContextMenuHandlers\\PythonSample",
|
106
|
-
)
|
107
|
-
except OSError as details:
|
108
|
-
import errno
|
109
|
-
|
110
|
-
if details.errno != errno.ENOENT:
|
111
|
-
raise
|
112
|
-
print(ShellExtension._reg_desc_, "unregistration complete.")
|
113
|
-
|
114
|
-
|
115
|
-
if __name__ == "__main__":
|
116
|
-
from win32com.server import register
|
117
|
-
|
118
|
-
register.UseCommandLine(
|
119
|
-
ShellExtension,
|
120
|
-
finalize_register=DllRegisterServer,
|
121
|
-
finalize_unregister=DllUnregisterServer,
|
122
|
-
)
|
@@ -1,84 +0,0 @@
|
|
1
|
-
# A sample shell copy hook.
|
2
|
-
|
3
|
-
# To demostrate:
|
4
|
-
# * Execute this script to register the context menu.
|
5
|
-
# * Open Windows Explorer
|
6
|
-
# * Attempt to move or copy a directory.
|
7
|
-
# * Note our hook's dialog is displayed.
|
8
|
-
|
9
|
-
import pythoncom
|
10
|
-
import win32con
|
11
|
-
import win32gui
|
12
|
-
from win32com.shell import shell
|
13
|
-
|
14
|
-
|
15
|
-
# Our shell extension.
|
16
|
-
class ShellExtension:
|
17
|
-
_reg_progid_ = "Python.ShellExtension.CopyHook"
|
18
|
-
_reg_desc_ = "Python Sample Shell Extension (copy hook)"
|
19
|
-
_reg_clsid_ = "{1845b6ba-2bbd-4197-b930-46d8651497c1}"
|
20
|
-
_com_interfaces_ = [shell.IID_ICopyHook]
|
21
|
-
_public_methods_ = ["CopyCallBack"]
|
22
|
-
|
23
|
-
def CopyCallBack(self, hwnd, func, flags, srcName, srcAttr, destName, destAttr):
|
24
|
-
# This function should return:
|
25
|
-
# IDYES Allows the operation.
|
26
|
-
# IDNO Prevents the operation on this folder but continues with any other operations that have been approved (for example, a batch copy operation).
|
27
|
-
# IDCANCEL Prevents the current operation and cancels any pending operations.
|
28
|
-
print("CopyCallBack", hwnd, func, flags, srcName, srcAttr, destName, destAttr)
|
29
|
-
return win32gui.MessageBox(
|
30
|
-
hwnd, "Allow operation?", "CopyHook", win32con.MB_YESNO
|
31
|
-
)
|
32
|
-
|
33
|
-
|
34
|
-
def DllRegisterServer():
|
35
|
-
import winreg
|
36
|
-
|
37
|
-
key = winreg.CreateKey(
|
38
|
-
winreg.HKEY_CLASSES_ROOT,
|
39
|
-
"directory\\shellex\\CopyHookHandlers\\" + ShellExtension._reg_desc_,
|
40
|
-
)
|
41
|
-
winreg.SetValueEx(key, None, 0, winreg.REG_SZ, ShellExtension._reg_clsid_)
|
42
|
-
key = winreg.CreateKey(
|
43
|
-
winreg.HKEY_CLASSES_ROOT,
|
44
|
-
"*\\shellex\\CopyHookHandlers\\" + ShellExtension._reg_desc_,
|
45
|
-
)
|
46
|
-
winreg.SetValueEx(key, None, 0, winreg.REG_SZ, ShellExtension._reg_clsid_)
|
47
|
-
print(ShellExtension._reg_desc_, "registration complete.")
|
48
|
-
|
49
|
-
|
50
|
-
def DllUnregisterServer():
|
51
|
-
import winreg
|
52
|
-
|
53
|
-
try:
|
54
|
-
key = winreg.DeleteKey(
|
55
|
-
winreg.HKEY_CLASSES_ROOT,
|
56
|
-
"directory\\shellex\\CopyHookHandlers\\" + ShellExtension._reg_desc_,
|
57
|
-
)
|
58
|
-
except OSError as details:
|
59
|
-
import errno
|
60
|
-
|
61
|
-
if details.errno != errno.ENOENT:
|
62
|
-
raise
|
63
|
-
try:
|
64
|
-
key = winreg.DeleteKey(
|
65
|
-
winreg.HKEY_CLASSES_ROOT,
|
66
|
-
"*\\shellex\\CopyHookHandlers\\" + ShellExtension._reg_desc_,
|
67
|
-
)
|
68
|
-
except OSError as details:
|
69
|
-
import errno
|
70
|
-
|
71
|
-
if details.errno != errno.ENOENT:
|
72
|
-
raise
|
73
|
-
print(ShellExtension._reg_desc_, "unregistration complete.")
|
74
|
-
|
75
|
-
|
76
|
-
if __name__ == "__main__":
|
77
|
-
from win32com.server import register
|
78
|
-
|
79
|
-
register.UseCommandLine(
|
80
|
-
ShellExtension,
|
81
|
-
finalize_register=DllRegisterServer,
|
82
|
-
finalize_unregister=DllUnregisterServer,
|
83
|
-
)
|
84
|
-
#!/usr/bin/env python
|
@@ -1,188 +0,0 @@
|
|
1
|
-
# A sample implementation of IEmptyVolumeCache - see
|
2
|
-
# https://learn.microsoft.com/en-ca/windows/win32/lwef/disk-cleanup for an overview.
|
3
|
-
#
|
4
|
-
# * Execute this script to register the handler
|
5
|
-
# * Start the "disk cleanup" tool - look for "pywin32 compiled files"
|
6
|
-
import os
|
7
|
-
import stat
|
8
|
-
import sys
|
9
|
-
|
10
|
-
import pythoncom
|
11
|
-
import win32gui
|
12
|
-
import winerror
|
13
|
-
from win32com.server.exception import COMException
|
14
|
-
from win32com.shell import shell, shellcon
|
15
|
-
|
16
|
-
# Our shell extension.
|
17
|
-
IEmptyVolumeCache_Methods = (
|
18
|
-
"Initialize GetSpaceUsed Purge ShowProperties Deactivate".split()
|
19
|
-
)
|
20
|
-
IEmptyVolumeCache2_Methods = "InitializeEx".split()
|
21
|
-
|
22
|
-
ico = os.path.join(sys.prefix, "py.ico")
|
23
|
-
if not os.path.isfile(ico):
|
24
|
-
ico = os.path.join(sys.prefix, "PC", "py.ico")
|
25
|
-
if not os.path.isfile(ico):
|
26
|
-
ico = None
|
27
|
-
print("Can't find python.ico - no icon will be installed")
|
28
|
-
|
29
|
-
|
30
|
-
class EmptyVolumeCache:
|
31
|
-
_reg_progid_ = "Python.ShellExtension.EmptyVolumeCache"
|
32
|
-
_reg_desc_ = "Python Sample Shell Extension (disk cleanup)"
|
33
|
-
_reg_clsid_ = "{EADD0777-2968-4c72-A999-2BF5F756259C}"
|
34
|
-
_reg_icon_ = ico
|
35
|
-
_com_interfaces_ = [shell.IID_IEmptyVolumeCache, shell.IID_IEmptyVolumeCache2]
|
36
|
-
_public_methods_ = IEmptyVolumeCache_Methods + IEmptyVolumeCache2_Methods
|
37
|
-
|
38
|
-
def Initialize(self, hkey, volume, flags):
|
39
|
-
# This should never be called, except on win98.
|
40
|
-
print("Unless we are on 98, Initialize call is unexpected!")
|
41
|
-
raise COMException(hresult=winerror.E_NOTIMPL)
|
42
|
-
|
43
|
-
def InitializeEx(self, hkey, volume, key_name, flags):
|
44
|
-
# Must return a tuple of:
|
45
|
-
# (display_name, description, button_name, flags)
|
46
|
-
print("InitializeEx called with", hkey, volume, key_name, flags)
|
47
|
-
self.volume = volume
|
48
|
-
if flags & shellcon.EVCF_SETTINGSMODE:
|
49
|
-
print("We are being run on a schedule")
|
50
|
-
# In this case, "because there is no opportunity for user
|
51
|
-
# feedback, only those files that are extremely safe to clean up
|
52
|
-
# should be touched. You should ignore the initialization
|
53
|
-
# method's pcwszVolume parameter and clean unneeded files
|
54
|
-
# regardless of what drive they are on."
|
55
|
-
self.volume = None # flag as 'any disk will do'
|
56
|
-
elif flags & shellcon.EVCF_OUTOFDISKSPACE:
|
57
|
-
# In this case, "the handler should be aggressive about deleting
|
58
|
-
# files, even if it results in a performance loss. However, the
|
59
|
-
# handler obviously should not delete files that would cause an
|
60
|
-
# application to fail or the user to lose data."
|
61
|
-
print("We are being run as we are out of disk-space")
|
62
|
-
else:
|
63
|
-
# This case is not documented - we are guessing :)
|
64
|
-
print("We are being run because the user asked")
|
65
|
-
|
66
|
-
# For the sake of demo etc, we tell the shell to only show us when
|
67
|
-
# there are > 0 bytes available. Our GetSpaceUsed will check the
|
68
|
-
# volume, so will return 0 when we are on a different disk
|
69
|
-
flags = shellcon.EVCF_DONTSHOWIFZERO | shellcon.EVCF_ENABLEBYDEFAULT
|
70
|
-
|
71
|
-
return (
|
72
|
-
"pywin32 compiled files",
|
73
|
-
"Removes all .pyc and .pyo files in the pywin32 directories",
|
74
|
-
"click me!",
|
75
|
-
flags,
|
76
|
-
)
|
77
|
-
|
78
|
-
def _GetDirectories(self):
|
79
|
-
root_dir = os.path.abspath(os.path.dirname(os.path.dirname(win32gui.__file__)))
|
80
|
-
if self.volume is not None and not root_dir.lower().startswith(
|
81
|
-
self.volume.lower()
|
82
|
-
):
|
83
|
-
return []
|
84
|
-
return [
|
85
|
-
os.path.join(root_dir, p)
|
86
|
-
for p in ("win32", "win32com", "win32comext", "isapi")
|
87
|
-
]
|
88
|
-
|
89
|
-
def _WalkCallback(self, arg, directory, files):
|
90
|
-
# callback function for os.path.walk - no need to be member, but it's
|
91
|
-
# close to the callers :)
|
92
|
-
callback, total_list = arg
|
93
|
-
for file in files:
|
94
|
-
fqn = os.path.join(directory, file).lower()
|
95
|
-
if file.endswith(".pyc") or file.endswith(".pyo"):
|
96
|
-
# See below - total_list is None means delete files,
|
97
|
-
# otherwise it is a list where the result is stored. It's a
|
98
|
-
# list simply due to the way os.walk works - only [0] is
|
99
|
-
# referenced
|
100
|
-
if total_list is None:
|
101
|
-
print("Deleting file", fqn)
|
102
|
-
# Should do callback.PurgeProcess - left as an exercise :)
|
103
|
-
os.remove(fqn)
|
104
|
-
else:
|
105
|
-
total_list[0] += os.stat(fqn)[stat.ST_SIZE]
|
106
|
-
# and callback to the tool
|
107
|
-
if callback:
|
108
|
-
# for the sake of seeing the progress bar do its thing,
|
109
|
-
# we take longer than we need to...
|
110
|
-
# ACK - for some bizarre reason this screws up the XP
|
111
|
-
# cleanup manager - clues welcome!! :)
|
112
|
-
# # print("Looking in", directory, ", but waiting a while...")
|
113
|
-
# # time.sleep(3)
|
114
|
-
# now do it
|
115
|
-
used = total_list[0]
|
116
|
-
callback.ScanProgress(used, 0, "Looking at " + fqn)
|
117
|
-
|
118
|
-
def GetSpaceUsed(self, callback):
|
119
|
-
total = [0] # See _WalkCallback above
|
120
|
-
try:
|
121
|
-
for d in self._GetDirectories():
|
122
|
-
os.path.walk(d, self._WalkCallback, (callback, total))
|
123
|
-
print("After looking in", d, "we have", total[0], "bytes")
|
124
|
-
except pythoncom.error as exc:
|
125
|
-
# This will be raised by the callback when the user selects 'cancel'.
|
126
|
-
if exc.hresult != winerror.E_ABORT:
|
127
|
-
raise # that's the documented error code!
|
128
|
-
print("User cancelled the operation")
|
129
|
-
return total[0]
|
130
|
-
|
131
|
-
def Purge(self, amt_to_free, callback):
|
132
|
-
print("Purging", amt_to_free, "bytes...")
|
133
|
-
# we ignore amt_to_free - it is generally what we returned for
|
134
|
-
# GetSpaceUsed
|
135
|
-
try:
|
136
|
-
for d in self._GetDirectories():
|
137
|
-
os.path.walk(d, self._WalkCallback, (callback, None))
|
138
|
-
except pythoncom.error as exc:
|
139
|
-
# This will be raised by the callback when the user selects 'cancel'.
|
140
|
-
if exc.hresult != winerror.E_ABORT:
|
141
|
-
raise # that's the documented error code!
|
142
|
-
print("User cancelled the operation")
|
143
|
-
|
144
|
-
def ShowProperties(self, hwnd):
|
145
|
-
raise COMException(hresult=winerror.E_NOTIMPL)
|
146
|
-
|
147
|
-
def Deactivate(self):
|
148
|
-
print("Deactivate called")
|
149
|
-
return 0
|
150
|
-
|
151
|
-
|
152
|
-
def DllRegisterServer():
|
153
|
-
# Also need to register specially in:
|
154
|
-
# HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches
|
155
|
-
# See link at top of file.
|
156
|
-
import winreg
|
157
|
-
|
158
|
-
kn = r"Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\{}".format(
|
159
|
-
EmptyVolumeCache._reg_desc_,
|
160
|
-
)
|
161
|
-
key = winreg.CreateKey(winreg.HKEY_LOCAL_MACHINE, kn)
|
162
|
-
winreg.SetValueEx(key, None, 0, winreg.REG_SZ, EmptyVolumeCache._reg_clsid_)
|
163
|
-
|
164
|
-
|
165
|
-
def DllUnregisterServer():
|
166
|
-
import winreg
|
167
|
-
|
168
|
-
kn = r"Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\{}".format(
|
169
|
-
EmptyVolumeCache._reg_desc_,
|
170
|
-
)
|
171
|
-
try:
|
172
|
-
key = winreg.DeleteKey(winreg.HKEY_LOCAL_MACHINE, kn)
|
173
|
-
except OSError as details:
|
174
|
-
import errno
|
175
|
-
|
176
|
-
if details.errno != errno.ENOENT:
|
177
|
-
raise
|
178
|
-
print(EmptyVolumeCache._reg_desc_, "unregistration complete.")
|
179
|
-
|
180
|
-
|
181
|
-
if __name__ == "__main__":
|
182
|
-
from win32com.server import register
|
183
|
-
|
184
|
-
register.UseCommandLine(
|
185
|
-
EmptyVolumeCache,
|
186
|
-
finalize_register=DllRegisterServer,
|
187
|
-
finalize_unregister=DllUnregisterServer,
|
188
|
-
)
|