Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
pywintypes和pythoncom之间的com_错误差异_Python_Com_Win32com - Fatal编程技术网

pywintypes和pythoncom之间的com_错误差异

pywintypes和pythoncom之间的com_错误差异,python,com,win32com,Python,Com,Win32com,pywintypes和pythoncom之间有什么区别?我对使用python处理COM非常陌生,因此简化的描述会很有帮助。此外,我正在使用com包装来修复com错误“call is rejected by Calle”。但是,com错误不会被异常捕获 那么我应该从pywintypes或pythoncom导入com_错误吗 from pywintypes import com_error import win32com.client class ComWrapper: @static

pywintypes和pythoncom之间有什么区别?我对使用python处理COM非常陌生,因此简化的描述会很有帮助。此外,我正在使用com包装来修复com错误“call is rejected by Calle”。但是,com错误不会被异常捕获

那么我应该从pywintypes或pythoncom导入com_错误吗

from pywintypes import com_error
import win32com.client


class ComWrapper:

    @staticmethod
    def wrap(func, *func_args):
        try:
            print('running the function')
            return func(*func_args)

        except com_error as e:
            print('checking the error')
            if e.strerror == 'Call was rejected by callee.':
                print('com_error retrying ', e)
                time.sleep(5)
                wrap(func, *func_args)

            raise

它们看起来是一样的,都来自模块。您可以看到
pythoncom
导入
pywintypes


我相信这两个名字的存在只是出于历史原因。通过
win32com
开发人员似乎表明他们被合并以避免重复代码。

他们看起来是一样的,而且都来自模块。您可以看到
pythoncom
导入
pywintypes

我相信这两个名字的存在只是出于历史原因。通过
win32com
开发人员似乎表明他们已经合并,以避免重复代码