gpt4 book ai didi

python - python 的 win32com.client.dispatch() 无法识别已注册的 COM 对象

转载 作者:太空狗 更新时间:2023-10-30 02:33:53 44 4
gpt4 key购买 nike

我正在尝试使用 Python 加载 COM 对象。我正在使用 win32com.client.Dispatch("Name.Of.Object") 加载它,并且 COM 对象已在 regsvr32 中注册并在 HKLM/CLSID 和 HKLM/Wow6432Node/CLSID 中显示为我的注册表中的条目.我可以很好地使用 VBScript 打开它,但是 Python 的 win32com.client.Dispatch() 给我这个错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 95, in Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,clsctx)
File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 108, in _GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 85, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.IID_IDispatch)
pywintypes.com_error: (-2147221164, 'Class not registered', None, None)

我读到 32 位与 64 位存在问题;我在使用 32 位 python 和 32 位 win32com 的 64 位机器上运行它。有什么建议吗?

请注意,这段代码在 VBScript 中运行良好:

Set obj = WScript.CreateObject( "Name.Of.Object" )

谢谢

最佳答案

通过安装 Python 64 位和 win32com 64 位解决了这个问题。

关于python - python 的 win32com.client.dispatch() 无法识别已注册的 COM 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11297381/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com