Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 19, 2009 14:24:51

Theod
От:
Зарегистрирован: 2009-11-19
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка в COM

Пытаюсь обратится к COM-серверу:

import win32com.client
pyServ = win32com.client.Dispatch("Project2.SimpleServer")
#Сервер написан на Delphi и содержит одну функцию, впрочем скрипт на питоне ничего не вызывает.

Исполнение заканчивается ошибкой:
  File "C:\Python26\Lib\SITE-P~1\PYTHON~1\pywin\framework\scriptutils.py", line 309, in RunScript
debugger.run(codeObject, __main__.__dict__, start_stepping=0)
File "C:\Python26\Lib\SITE-P~1\PYTHON~1\pywin\debugger\__init__.py", line 60, in run
_GetCurrentDebugger().run(cmd, globals,locals, start_stepping)
File "C:\Python26\Lib\SITE-P~1\PYTHON~1\pywin\debugger\debugger.py", line 624, in run
exec cmd in globals, locals
File "D:\cmsproject\activation\&#202;&#238;&#239;&#232;&#255; codecreator.py", line 2, in <module>
pyServ = win32com.client.Dispatch("Project2.SimpleServer")
File "C:\Python26\lib\site-packages\win32com\client\__init__.py", line 95, in Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,clsctx)
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 98, in _GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 78, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.IID_IDispatch)
com_error: (-2147467262, '\xc8\xed\xf2\xe5\xf0\xf4\xe5\xe9\xf1 \xed\xe5 \xef\xee\xe4\xe4\xe5\xf0\xe6\xe8\xe2\xe0\xe5\xf2\xf1\xff', None, None)
'\xc8\xed\xf2\xe5\xf0\xf4\xe5\xe9\xf1 \xed\xe5 \xef\xee\xe4\xe4\xe5\xf0\xe6\xe8\xe2\xe0\xe5\xf2\xf1\xff' означает “Интерфейс не поддерживается”.

Прошу помочь решить ошибку, как обратится к этому COM-серверу?



Офлайн

#2 Ноя. 19, 2009 14:49:34

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

ошибка в COM

Theod
“Project2.SimpleServer”
А ты уверен в этой строчке, а то я попробовал создать “Word.Application” и у меня все отлично отработало, может не в питоне проблема?
Вот неплохая статья по COM'y в Python: http://www.devshed.com/c/a/Python/Windows-Programming-in-Python/, может поможет разобраться более детально в проблеме.

P.S. Уж больно ник у тебя знакомый =)



Отредактировано (Ноя. 19, 2009 14:53:38)

Офлайн

#3 Ноя. 19, 2009 15:02:07

kmet
От:
Зарегистрирован: 2009-10-20
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка в COM

cкорее всего COM-сервер не реализует IDispatch.



Офлайн

#4 Ноя. 23, 2009 13:22:13

Theod
От:
Зарегистрирован: 2009-11-19
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка в COM

regall
Theod
“Project2.SimpleServer”
А ты уверен в этой строчке,
kmet
cкорее всего COM-сервер не реализует IDispatch.
Вы правы IDidpatch этот COM-сервер не реализует. Пришлось самому всё переписывать(

regall
P.S. Уж больно ник у тебя знакомый
Хм, я достаточно редко пользуюсь этим ником, да и в python-сообщества с недавних пор начал заглядывать. Спасибо за ссылку.



Офлайн

#5 Ноя. 23, 2009 13:33:47

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

ошибка в COM

PgBaggBa



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version