Форум сайта python.su
Выполняю некий скрипт, который выдает ошибку, но ошибка эта в Юникоде почемуто:
D:\robo>C:\Python26\python.exe d:\robo\robot3.py
Traceback (most recent call last):
File "d:\robo\robot3.py", line 185, in <module>
sf = DispatchWithEvents("TEClient.SlotFace", SlotFaceEvent)
File "C:\Python26\lib\site-packages\win32com\client\__init__.py", line 245, in
DispatchWithEvents
disp = Dispatch(clsid)
File "C:\Python26\lib\site-packages\win32com\client\__init__.py", line 95, in
Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,c
lsctx)
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 104, in
_GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 84, in _
GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.II
D_IDispatch)
pywintypes.com_error: (-2147221005, '\xcd\xe5\xe4\xee\xef\xf3\xf1\xf2\xe8\xec\xe
0\xff \xf1\xf2\xf0\xee\xea\xe0 \xf1 \xf3\xea\xe0\xe7\xe0\xed\xe8\xe5\xec \xea\xe
b\xe0\xf1\xf1\xe0', None, None)
Офлайн
для начала покажи скрипт…
Офлайн
fallenПри этом эксепшене печатается тупл, в котором какие-то значения в том числе и строки в виде байт. Это нормальное поведение. Что вам не нравится?
Куда копать?
Офлайн
Daevaorn
Понятно что у чувака в юникоде просто выходит , однако на сколько я понял он этот код просто гдето взял и решил использовать… чтоб знать что у него за ошибка, думаю надо посмотреть код.
Офлайн
Недопустимая строка с указанием класса
COMовские ошибки всегда так показывает :( копируете строчку с ошибкой и потом в интерпретаторе print s.decode('cp1251')
Офлайн
допустим покажется ошибка на русском языке… это ж не исправит саму ошибку
Офлайн
sypper-pitА вот он прочитает сообщение об ошибке и исправит ее, а вам станет стыдно ;)
допустим покажется ошибка на русском языке… это ж не исправит саму ошибку
Офлайн
“Недопустимая строка с указанием класса” так звучит эта ошибка.
Ругается на строку:
sf = DispatchWithEvents("TEClient.SlotFace", SlotFaceEvent)
from win32com.client import DispatchWithEvents
Офлайн
Пока что мне не становится стыдно…. :)… почитай майл_лист http://markmail.org/message/rw4e7ez44wsyvxyy
А вообще я думаю это из-за того что не может найти некий “”“SlotFace”“”
Отредактировано (Окт. 30, 2009 13:19:42)
Офлайн
Оказывается надо внимательнее читать документацию =) Кому интересно, надо зарегить библиотеку:
TEClient.exe /RegServer
Офлайн