|
|
|
Чем отличается OLE от COM? | ☑ | ||
|---|---|---|---|---|
|
0
MarKsu
16.08.05
✎
17:25
|
Чем отличается OLE от COM? С точки зрения использования в 1С. Корректно ли при OLE подключении использовать COMобъект?
|
|||
|
1
Волшебник
модератор
16.08.05
✎
17:30
|
Подключение и использование очень похоже, но есть отличия:
OLE - это обычный клиентский запуск, в отдельном процессе, со всеми библиотеками, тяжеловесный. Загружается модуль приложения. Загружаются все общие модули с флажками "Клиент" и части модулей внутри директив #Если Клиент Тогда COM - это запуск в специальном режиме, в том же процессе, минимум библиотек, легковесный. Вместо модуля приложения загружается модуль внешнего соединения. Загружаются все общие модули с флажками "Внешнее соединение" и части модулей внутри директив #Если ВнешнееСоединение Тогда |
|||
|
2
ШтушаКутуша
16.08.05
✎
22:12
|
(0) тем что в 1С поддерживается ТОЛЬКО позднее связывание,
неявно через интерфейс IDispatch, например на этапе компиляции(интерпретации) кода 1С можно написать OleObj.Method() и 1С не будет ругаться, и во время исполнения будет задействован вызываемый метод,это и есть позднее связывание |
|||
|
3
alexsy
17.08.05
✎
06:47
|
V8 = Новый COMОбъект("V8.Application");
это OLE? а как COM сделать? |
|||
|
4
LORD
17.08.05
✎
07:00
|
(1) А можно испльзовать COM соединенение с Excel? То лучше ли это соед. чем оле?
|
|||
|
5
LORD
17.08.05
✎
07:01
|
(1) А можно испльзовать COM соединенение с Excel? И если да, то лучше ли это соед. чем оле?
|
|||
|
6
SnarkHunter
17.08.05
✎
07:01
|
Я в шоке...
|
|||
|
7
LORD
17.08.05
✎
07:04
|
(6) От чего?
|
|||
|
8
Волшебник
17.08.05
✎
07:23
|
(3) Это OLE. А если там будет V8.ComConnector, то будет COM.
|
|||
|
9
кккккккеееееее
17.08.05
✎
07:46
|
а где про это все можно почитать?
|
|||
|
10
Волшебник
модератор
17.08.05
✎
07:48
|
(9) В документации. Еще много информации можно найти здесь v8: COM-соединение, а также
http://www.forum.mista.ru/index.php?forum=1c&v8=1&area=olecom и здесь http://www.forum.mista.ru/find.php |
|||
|
11
MarKsu
17.08.05
✎
09:22
|
СОМ более легковесный - значит ли это, что при таком соединении не будут доступны некоторые стандартные конструкции, например создание новых объектов языка. И имеется ли доступ к пользовательскому интерфейсу (формы, сообщения)?
|
|||
|
12
Волшебник
модератор
17.08.05
✎
09:46
|
(11) Интерфейс недоступен. Создание новых объектов возможно, если они не являются интерфейсными. О доступности каждого конкретного типа в режиме COM-соединения написано в синтакс-помощнике.
|
|||
|
13
ШтушаКутуша
17.08.05
✎
14:36
|
(11) OLE надстройка базирующаяся на COM
|
|||
|
14
Bazooka
17.08.05
✎
14:47
|
на вопрос (5) кто-нибудь ответит? тоже интересно...
|
|||
|
15
Волшебник
модератор
17.08.05
✎
14:50
|
(5) Нет. Но есть ActiveX, представляющий основные возможности Excel. Это гораздо легче, чем запускать полноценный Excel. Более того, этот ActiveX можно разместить на форме 8.0 и работать как с обычным элементом управления.
|
|||
|
16
Bazooka
17.08.05
✎
14:57
|
(16) и листы можно создавать?
где его взять? |
|||
|
17
ШтушаКутуша
17.08.05
✎
15:08
|
(14) COM быстрее,причина-прямое обращение к интерфейсам объекта,
я уже не говорю про контроль на этапе компиляции,чего нет при позднем связывании(OLE)-ошибку можно и через год получить и, если v8.ComConnector действительно чистый COM (ЧТО СОМНИТЕЛЬНО), то вряд ли это возможно,то есть работа через COM с сервером автоматизации(OLE), каким явл. Excel-будет невозможна. В v8 по моему ИМХО,отсутствует строгая типизация языка,без чего поддержка COM просто невозможна. Таким образом v8ComConnector это не что иное как технология Distrib.COM (DCOM), которая поддерживает автоматизацию-OLE. |
|||
|
18
VBNet
17.08.05
✎
16:57
|
Немного не в тему:
Реально ли в .Net создавать аналоги VB6: ActiveX Exe, ActiveX Componet и ActiveX Document. Т.е. ActiveX Componet - можно вставить на форму. ActiveX Documet - можно вставить в табличную часть. |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |