从python中pywin32的方法分派(Excel.Application)中获取“com_error:(2147221005,'无效类字符串',None,None)”

2024-05-06 03:00:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我在从Azure devops管道运行给定代码时遇到以下错误,当从本地虚拟机触发时,相同的代码可以正常工作。任何帮助都将不胜感激

错误:

com_error: (-2147221005, 'Invalid class string', None, None)

版本:

pywin32              = 300,
Excel                = WPS Office

代理类型:在作为服务运行的C:drive中配置的自托管代理

from threading import Lock

import win32com.client as win32
from openpyxl import load_workbook
from pyexcelerate import Workbook, Color, Style, Fill
from win32com.client import Dispatch, DispatchEx
from xlrd import open_workbook
 
 with lock:
            while True:
                try:
                    EP._filepath = filepath
                    EP._activesheet = open_workbook(filepath)
                    break
                except:
                    ValueError
                    try:
                        xl = Dispatch('Excel.Application')
                    except:
                        xl = DispatchEx('Excel.Application')
                    finally:
                        xl = win32.gencache.EnsureDispatch('Excel.Application')
                wb = xl.Workbooks.Open(filepath)
                wb.Close(True)

Tags: 代码fromimportclientnone代理application错误