3
파이썬에서 COM 개체를로드하려고합니다. win32com.client.Dispatch ("Name.Of.Object")를 사용하여로드하고 COM 객체가 regsvr32에 등록되었으며 내 레지스트리에 HKLM/CLSID 및 HKLM/Wow6432Node/CLSID의 항목으로 나타납니다. . 나는 VBScript를가 잘 사용하여 열 수 있지만 파이썬의 win32com.client.Dispatch는() 나에게이 오류 준다 : 나는 64 비트 대 32에 문제가 있다는 것을 읽고등록 된 COM 개체가 파이썬의 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 비트 파이썬과 32 비트 win32com을 사용하는 64 비트 시스템에서이를 실행합니다. 어떤 제안? VBScript를이 코드가 잘 작동하는지
참고 :
Set obj = WScript.CreateObject("Name.Of.Object")
감사