Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Начиная в Excel 2002, майкрософт, специфицирует COM... 11.01.08 04:24 Число просмотров: 2228
Автор: void <Grebnev Valery> Статус: Elderman
|
> дак я не понял ето твой DCOM сервер или нет? Если твой то > причем тут Eхcel?
Начиная в Excel 2002, майкрософт, специфицирует COM интерфейс Excel-ля MIDL_INTERFACE("A43788C1-D91B-11D3-8F39-00C04F3651B8") IRTDUpdateEvent и интефейс пользователя MIDL_INTERFACE("EC0E6191-DB51-11D3-8F3E-00C04F3651B8") IRtdServer для реалиции нового способа комменикаций с Excel комбинированной push/pull доставкой. В случае LPC, для COM - это отлаженная, удобная в программировании и весьма хай-перформанс технология. Excel проглатывает около 200 000 обновлений в секунду для 20 000 так называемых топиков. Вся эта технология месанджинга получила название ExcelRTDServer, http://support.microsoft.com/kb/327215, - очень распространена для финансовых приложений, где надо мониторить сотни тысячи быстро изменяющихся величин.
Майкрософт, как часто бывает в мире COM, специфицирует только интерфейсы.IRTDUpdateEvent и IRtdServer. Имплементацию COM надо делать самому. Так, что это мой COM.
Для COM (lpc) - проблем нет. Всё регистрируется и работает нормально. Для DCOM (rpc), у всего сообщества , как оказывается, возникает головная боль - в отличии от обычного DCOM, DCOM ExcelRTDServer требует огромных усилий по конфигурации, которая как оказывается будет ещё и разной в зависимости от версии Excel (чем больше секурити у новых версий Excel, тем труднее его заставить запускать DCOM (думаю, прокси COM на локальном хосте валится ещё до какого-либо маршалинга, когда например Excel видит Add-in без подписи).
Короче сегодня всй получилось, но с некоторой кривизной:
- пришлось отказаться от Excel 2007 (просто не работает, даже не поднимает удалённый процесс) и использовать Excel 2003
- пришлось использовать совершенно идиотские настройки DCOM, о которых нигде не написано, и трудно было б предположить (Authentication = none, Identity = the interactive user).
- соответственно исправлять ACL secutiry COM для моего RTD server.
Короче морока, и метод "тыка" с настройкой DCOM... Единственно, что упокаивает - прстота разработки и поддержки кода в будущем.
В любом случае, спасибо за мнение и участие.
|
|
|